I would say that there are quite some ways to describe somthing with an AST in 
nim. And for writing macros it can be kind of hard to deal with all those 
variations. For example I just assume that there is always a RecList in the 
OfBranch. I write my code that iterates over node that I just assumed to be a 
RecList, but it isn't. Then something goes wrong and I realize that my 
assumption that I did by testing with dumpTree was not correct, and I have to 
write extra code to deal with those special cases. The workflow here is not 
perfect, because it can be hard to predict all the variations of the AST.

This will not be a complaint though, because I honestly do not know how to make 
it better, it just teaches me to be careful and not use macros when it is not 
really suitable to do so.

Reply via email to