Hacker News new | ask | show | jobs
by mcanouil 2 days ago
That's still an open question to be honest. Whether or not I should still surface aes() or just drop it in favour of the plain dictionnary. it's indeed not really necessary, but makes it way easier for all ggplot2 (R), plotnine (Python), ggsql (SQL) users to switch or adopt Gribouille in typst.
1 comments

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 fresh look.

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/gribouille/issues/143

> A plain dictionary makes this harder or virtually impossible (you most often will silently fail)

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!)