4 ms·
M4 is a general-purpose preprocessor. Its preprocessing ability focuses on the word level and it blends macros in appearance to the look of the target language
by hzhou321 8y ago
M4 is a general-purpose preprocessor. Its preprocessing ability focuses on the word level and it blends macros in appearance to the look of the target language on purpose. I especially having trouble with the latter. In editing, I would like to have a "macro" mode and "language" mode, and being confused about which mode I am in -- during writing or reading -- is not good. Then I also find the word level macros are too bottom-up. The most needed preprocessing is top-down management. `include` is an obvious example, `if-else` too. But a scoped block level facility is even more useful.
As an alternative, I have developed and used MyDef: http://hz2.org/blog/mydef_general.html http://hz2.org/blog/mydef_general.html