Basics
- What is a “symbol” in Julia?
- Looking for good macro examples
- π's Metaprogramming bits & bobs
- Assigning a macro to a variable
- Create local function variables programmatically from a dictionnary
- using a name macro for variables from a functions inputs
- Is it possible to create types in Julia at runtime?
- Efficient way to define new variables by iterating a dictionary (Julia)
- How to interpolate a symbol as a Symbol in a Julia Expr?
Quoting Mechanism
- Interpolating an Expression into an Expression
- Disambiguate the various quoting mechanisms in Julia metaprogramming
- difference between Meta.quot, Expr(:quote), and QuoteNode #6104
eval
- Best way to eval in a given scope / context which is in the form of a Dict?
- what scopes does isdefined() look in?
@generated Macro
- Jake Bolewski: Staged programming in Julia
- Staged programming - Jake Bolewski's speech
- Generating type-stable
getfield
calls using generated functions - @_inline_meta
Macro Hygiene
- RFC: Improvement to hygienic macros #6910
- RFC: WIP: Make macro hygiene easier to use and less error-prone #10940
- Using gensym properly
- Broken macro functionality in Julia v0.6
- Symbols passed to macros in a module improperly scoped #15085
- How can I define a julia macro that defines a macro?