I read <https://github.com/nim-lang/RFCs/issues/551>. I still have a few
questions about the NIF. Will there be information about metoprogramming ? I.e.
generics, templates. Besides, will compileTime things be stored there ? Will it
be easier to analyze than the current ast ? Am I right to understand that this
is a maximally simplified ast, i.e. for example
template test(x): untyped =
if something: x
Run
In NIF it will be
Macros {
StrVal "test"
Arg {
Typed "Untyped"
SymUse x
}
codeFor:
If something: x
}
i.e.
macro test(x: untyped): untyped =
if something: x
Run
And in general, all templates can be represented as macros. It will do that and
simplify some constructs to others with the same logic ? If so will there be
some record of what it was before this typo:
Macros {
Info {
OldStmt
TemplateStmt
}
}
Run