看板 PLT 關於我們 聯絡資訊
最關鍵的地方是,其他程式語言內部都要把原始程式轉成語法樹,再做後續處理 而 Lisp 是直接人工 key 出這個語法樹,所以沒去區分原始程式或語法樹, 因為對 Lisp 來說,那是一樣的東西 ※ 引述《beatitude (python fan)》之銘言: : 回一篇古老的文 : 在小弟的認知裡,由於 Lisp code 本身是由 List 組成的樹狀結構, : 所以 Lisp 巨集可以在編譯期將 Lisp code 當作資料結構進行處理。 : 由於 Lisp 巨集設計是對使用者開放的, : 所以原則上 user 可以創造出任意的語法控制結構 (if, def, defn, defmacro...etc) : 可以說是想要什麼都做得出來 : 其它語言因為語法規則較為複雜, : 所以巨集 (ex: C macro) 往往僅能把 code 作為純文本處理, : 如此一來要把一個可見的 code pattern 抽象化出來就比較困難, : 我想這是 Paul Graham 聲稱 Lisp is power 的原因 : 如果有說的不對的地方還請各位指教,thanks! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.199.194
coolcomm: 01/11 14:01
etpket:沒記錯的話 lisp本身就可以容易達成LL 02/05 16:17