> I know that this is my personal problem. Whenever I try to learn macro, I got > distracted from it. The reason is interesting. I want to access type X from > module A in module B. And I want to access type Y from module B in module A. > And Nim is not allowing this. Nim suggest me to plan my code as a single > module and use include feature.
It is certainly not your "personal problem", it is a problem of Nim itself. You're addressing two things ot once here that should kept separate. The "Type X in module A and Type Y in module B" addresses the fact that modules do work on the same data with different types. Indeed, you can't express this within Nim. The other thing is, you're regarding macros as type transformers, but then you types for macros themselves. Again, not possible within Nim. You then want to go further having macros that can transform modules into modules. This requires reflections or "reifications" in the type system. Again, it is not in the language.
