You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have this code that I use for expanding things.
I think it is like prettify but when I tried using prettify
it engaged animal names,
which (unlike gensym_ids) removes the names of things that were created via gensym(:meaningful)
Not sure what to do with it, but it is handy.
Would a PR be useful?
using MacroTools
macro niceexpand(code)
code = Base.macroexpand(Main, code, recursive=false)
code = MacroTools.postwalk(MacroTools.unblock, code)
code = MacroTools.postwalk(code) do x
isexpr(x, :escape) ? x.args[1] : x
end
code = MacroTools.gensym_ids(code)
code = MacroTools.striplines(code)
return QuoteNode(code)
end
The text was updated successfully, but these errors were encountered:
I've got a very similar macro on my side. Maybe we should name it @prettyexpand for consistency, and change prettify accordingly.
The animal names are definitely prettier, but they're losing variable name information. I would replace the gensyms like var"#3#elapsedtime" with ¤elapsedtime, or some similar Unicode character that Julia won't var.
I have this code that I use for expanding things.
I think it is like
prettify
but when I tried usingprettify
it engaged animal names,
which (unlike
gensym_ids
) removes the names of things that were created viagensym(:meaningful)
Not sure what to do with it, but it is handy.
Would a PR be useful?
The text was updated successfully, but these errors were encountered: