Julia's generated fns are like macros,but they have access to the type of fns! https://docs.julialang.org/en/latest/manual/metaprogramming/#Generated-functions-1 (Other PLs call this staged fns AIUI)