|
|
|
|
|
by sreque
3373 days ago
|
|
My point exactly. The issue isn't java the language. The issue is the flexibility of the JVM runtime and how people are abusing it. Also, if load-time aspect-weaving and classpath-scanning-based autodiscovery don't count as magic to you, then not much will. Code generation at least has the huge, huge, humongous advantage that you have code on disk that you can read and debug. I also admire Racket's macro system for coming with IDE support for introspecting and debugging the code generated by macros. Macros are a much better design because they generally run at compile time and they generally only make local code transformations that are much easier to reason about, as opposed to the sweeping global changes a weaver will make. |
|