我想写一个宏处理器。到目前为止,我已经做了一个非常简单的草图,它应该看起来如何,我得出的结论是,发明一种全新的语言并不是一个好主意,但我应该重用现有的概念。到目前为止,我的草图是一种具有类似tex语法和功能的irb,但我不确定我应该使用什么作为ruby替代品。 语言应该简单但功能强大。我不想在其中编写操作系统,但它应该不如“原始”操作系统。 bc或者。我根本不关心执行时间。嵌入不应该太难,如果语言本身稳定就会很好。
到目前为止,我已经考虑过这些:
while(c=getchar()){}
。我很怀疑。我没有真正找到任何利弊
更新:该语言应具有功能定义,库加载或 regexps等功能(循环也非常好)我不想使用传统的宏语言,如M4,因为我希望能够以更多程序(或可能是功能)的方式编写。宏语言有它们的优点,但我需要一种全新的思考问题的方法,这对于初学者来说尤其困难。我的目标是利用两全其美的优势。
答案 0 :(得分:2)
鉴于TCL是关于字符串和数组处理的,并且用于嵌入,它似乎是一个显而易见的选择。
Luatex有一定的追随者。据推测,他们已经找到了一种方法使其适用于文本处理,因此您可能希望看一下。
Scheme(包括guile)也非常适合编写脚本;或者你可能会看看是否有一种方法可以嵌入一个elisp处理器(嵌入xemacs?),这毕竟是关于文本处理的。