星期日, 2月 18, 2007

[link] The Aha! point for lisp.

Aha! While writing YAQL I accidentally discovered Lisp

Greg Trasuk's Weblog:
"""
And then the AHA! moment happens. I finally "get" Lisp! It's just a string representation of the abstract syntax tree for any language! I could embed a Lisp interpreter in the query parser! I could use Lisp macros to perform optimizations on the query! There's a JJTree grammar for Python in the Jython package, I could parse Python into Lisp programs! I'm onto a Really Big Concept! Possibly the Next Big Thing, the grand unification of all scripting languages! Now I have to move back to Xemacs from Netbeans! All I need to do is increase the output by 15% and the city will be mine! If only I had More Power!
"""

話說自從lloyd大大傳授我他壓箱(真的是壓了好多層箱)
的Emacs Lisp聖書三大本,
最近寫Emacs Lisp寫出興趣來了,
發現其實Lisp很好玩,
以前雖然也沒事會裝裝武林高手,
用用lambda,map,filter...blahblah...
雖然把Code寫成一副很有"尊嚴"的樣子,
但是其實心裡總是覺得夾在Python的Code裡面就怪怪的,
多寫幾個就覺得很醜... 所以其實也只是偶而拿來減少一下loop需求而已.
但是, 果然玩了Lisp之後才知道人家是正牌的... XD

所以最近沒事都在讀讀Practical Common Lisp跟玩玩Emacs,
(不過最常幹的還是看動畫念日文跟網路亂逛), 然後看到這篇其實寫的很不錯.

他沒講到的話 我還真的不知道... 覺得這篇很有啟發性...
把任何語言的AST寫成字串形式其實就是LISP...(筆記筆記)
1958年就應該要知道的東西...
結果總是有人(就是我們這代人)在重造輪子...
算了, 反正造輪子總是比較爽... 自產自銷 XD

不過還是要說... 拜Python教的大家絕對不用氣餒...
Python+Django是無敵的...
(ㄟ lloyd大大...你又可以演吐槽角色了...)

2 則留言:

Thinker 提到...

Lisp 是很酷的東西,但程式語言除了很酷的功能, readability 也很重要。為什麼 Lisp 的 readability 不足?prefix 的語法,雖然簡化了 parser ,卻違反我們日常的習慣。

使徒提姆 !? 提到...

Thinker大大說的沒錯, 說到我心坎裡,我百分之兩百贊同. 話說Programming歷史一直以來Programmer都被機器牽著走, 每個人都想的是怎麼去"催機器",為了機器快不惜倒練奇經八脈,能goto不loop,能用preprocess macro不function,為了機器方便,人要想的跟機器一樣, 能看到StackPointer就變成高手, 寫個簡單東西能考慮記憶體的位置在哪就覺得自己是高手, 差不多就跟EVA裡面要跟機器講求同步率一樣,反正Code寫的快效率高最重要就是好, 別人看不懂是活該去死鳥蛋新手, 真正重要的Read Ability被Programmer英雄主義+我強所以毋需團隊之下遠遠拋開毫不受到重視. 所以這也是為啥我特別喜歡Python的原因, 因為我覺得Python是一個"面向人的語言", Lisp很酷... Python是平凡中的偉大越看越美麗啊 XD
(不過有的時候我覺得人就是喜歡倒練奇經八脈, 練著練著有些人也還真的就逆流了 XD 所以只要不走火入魔大聲伐噠別人也該照著倒練經脈的話應該還無傷大雅就是了 :P)