看了一段時間的Tex源碼,還沒有看完.
從今天開始寫一些閱讀過程中記錄下來的筆記.可能會比較亂.
1) 雖然對所謂的"文學(xué)編程"還沒有太多理解,不過這種分段分節(jié)解釋的方式確實比較適合理解,或許符合"分而治之"的思想吧.
DEK的具體做法是將源代碼和相關(guān)解釋分為1379個節(jié),每個節(jié)以<解釋><代碼>的模式來進行處理,
一些特殊的節(jié)可能會沒有<解釋>或者沒有<代碼>.
2) 因為Tex是有pascal語言寫的, 而pascal有一種語言上的限制:
那就是要使用的聲明(包括函數(shù),過程和變量)必須在主程序的前面聲明完,而不可以等到用的時候才聲明.
DEK的典型做法是通過逐漸增加的方式來定義聲明.
比如第4節(jié)定義變量為:
var <Global variables
13>;
在第13節(jié)定義:
<Global variables
13>=bad:integer;
在第20節(jié)定義:
<Global variables
13>+=xord:array[text_char] of
ASCII_code; ...
可以看出來, 這種逐漸添加聲明的方式是很適合分段解釋的.