Hacker News new | ask | show | jobs
by bobbylarrybobby 1608 days ago
Being able to operate on expressions before they reach the compiler is very handy.

Consider how ergonomic testing is thanks to macros: https://docs.julialang.org/en/v1/stdlib/Test/

Here's an example of passing quasi-json to a plotting function: https://www.queryverse.org/VegaLite.jl/stable/userguide/vlpl... . This lets you essentially transliterate a VegaLite spec into Julia without needing to translate it into Julia.

Finally, macros that operator on dataframes let you write code that looks kind of like SQL, and is much more pleasant than working with functions: https://dataframes.juliadata.org/stable/man/querying_framewo...