[ANN] ChemEquations.jl: write and balance chemical equations elegantly and efficiently

Package announcement on my blog:
https://zdroid.github.io/blog/2020/08/chemequations/
with further explanation how and why the package was built.

Soon I’ll write another post about setting up documentation and tests for the package.

3 Likes

In the pipeline is probably the best synthetic organic chemistry blog out there. Back when I aspired to be a synthetic chemist, I read it a lot for laughs. Anyone who has been in the lab for a sufficient period of time develops stories like these - happily I moved out after a few years of practicing!

Nice Zlatan. I may build a package ontop of yours soon enough. Life has crept in and I can only pick projects that are demo-able to new work, and don’t violate my noncompete thing (thankfully most things in the universe don’t). This wouldn’t but - focus.

1 Like

Nice package, thanks!

I don’t understand the remark about AbstractAlgebra.jl being heavy. Could you elaborate?

I just noticed that because of LinearAlgebraX, nine more packages were pulled in, including packages like TimeZones or EzXml. Also, it seems to take longer to load than AbstractAlgebra.jl (on 1.5 and precompiled)

julia> @time using LinearAlgebraX
  0.655378 seconds (715.15 k allocations: 47.227 MiB)

julia> @time using AbstractAlgebra
  0.466167 seconds (462.26 k allocations: 27.768 MiB)

I don’t mind if you use one over the other, but I would like to understand why AbstractAlgebra.jl gets labelled as “heavy”, where it has zero dependencies and loads faster.

I put “heavy” in quote marks because I didn’t mean it literally. I just wanted to say that they have way more functionality than needed for ChemEquations, so I hope that clarifies the thing. :slightly_smiling_face:

Seems like a bad design choice since those aren’t needed, I should probably open an issue there.

1 Like

Makes sense. Thanks for the clarification.