作者ykjiang (York)
看板PLT
标题Re: [新手发问]Lisp
时间Fri Jan 11 12:21:04 2013
最关键的地方是,其他程式语言内部都要把原始程式转成语法树,再做後续处理
而 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
1F:推 coolcomm: 01/11 14:01
2F:推 etpket:没记错的话 lisp本身就可以容易达成LL 02/05 16:17