我正在編寫幾種語言的解釋程序,在TeX中,這將允許TeX用戶從他們最喜歡的語言(如果支持)插入一些代碼,並使TeX在生成時運行它pdf的結果。最簡單的真實世界語言
我開始寫了一個解釋器Brainfuck,因爲它是一種非常簡單的語言。我認爲GolfScript將是小菜一碟,但它比我預期的更豐富(主要是因爲它基於相當精心製作的Ruby)。爲此,我可能會做Whitespace。但這些都不是人們真正使用的,所以到現在爲止,整個過程主要是練習如何在TeX中最好地編寫解釋器。
我的問題是:我應該考慮什麼現實世界的語言?它應具備以下素質:
- 簡單(我還沒準備好爲Python),
- 通常被用作單行(如果可能),
- ,具有相當大的用戶羣。
我假設每種語言都可以有一個解釋器(編譯只會提高速度),請提一下如果您想到所提議的語言的技術障礙。編輯:我也有興趣評論,如「實現Perl 2,然後逐漸添加對後續版本的支持」(不知道如果特定的場景是一個好主意,雖然)。我已經編寫了一些正則表達式的支持。
這是運行代碼並用代碼輸出代替它的地方,就像預處理器一樣嗎?我無法想象編寫自己的解釋器是一條路,只需提取代碼段並將它們傳遞給真正的編譯器即可運行並返回結果。 –
我同意。不幸的是,舊的TeX引擎不能調用外部程序。而較新的TeX引擎通常會禁用此功能,因爲訪問操作系統是潛在的安全風險。 ---如果這還不夠,只要把它看作是浪費的練習:-)。 –