Earlier quoted context omitted.
My take: does something add value OR is there because were are just used to? Gribouille is not ggplot2, or other. Syntax is different. Superficial keyword similarity is (usually) a false friend. Reusing a keyword might be useful, but keeping an unnecessary construction is (in my view), a cargo cult. Typst itself breaks with a lot of LaTeX stuff, and it is good that it does not pretend it is LaTeX-with-Rust, but has a…
With a constructor, you get to document/validate. A plain dictionary makes this harder or virtually impossible (you most often will silently fail). https://m.canouil.dev/gribouille/reference/core/aes.html I already drifted apart from ggplot2/plotnine in many ways, I don't mind as long as it's not confusing. I've opened a GitHub issue about this question (no ansers at this point): https://github.com/mcanouil/gribouill…
I didn't know about these Typst restrictions. Silent fails are the worst, so if a constructor is necessary to prevent these, good it is there.
Thanks for explaining! (And for developing gribouille in the first place!)