Re: [新手發問]Lisp

看板PLT (程式語言與理論)作者 (python fan)時間12年前 (2013/01/09 23:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《AngelLeliel (羽澤祐二)》之銘言: : 最近因為看了"駭客與畫家"這本書對Lisp產生興趣 : 因此找了相關的資料來看 : 一開始我對Lisp的印象是一個歷史悠久的語言 : 並沒有花太多心思在這上面 : 但是稍微深入了解以後 我發現Lisp真的是非常Powerful : 就我個人的認知 : Lisp最強大的一個功能便是Macro : 這讓我不禁想問 : 這麼強大的工具為什麼鮮見於其他直譯式語言之中? : 是程式語言架構造成的嗎? : 如果想要在其他語言(像是Perl,Ruby) : 當中引入這個功能會有什麼困難的地方? : 據我所知Perl6會把Macros加進來的樣子... : 也許敘述的不是很有條理 : 還請各位先進加以指導 回一篇古老的文 在小弟的認知裡,由於 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: 1.161.244.143
文章代碼(AID): #1GxPAaxl (PLT)
討論串 (同標題文章)
本文引述了以下文章的的內容:
2
3
以下文章回應了本文
2
2
完整討論串 (本文為第 2 之 3 篇):
2
3
2
2
文章代碼(AID): #1GxPAaxl (PLT)