現場coding就要這個範兒——記Lisp愛好者技術沙龍
在《黑客與畫家》這本書中,保羅 · 格雷厄姆給大家描述了一種黑客心目中夢寐以求的語言。
讓我們試著描述黑客心目中夢寐以求的語言。這種語言乾淨簡練,具有最高層次的抽象和互動性,而且很容易裝備,可以只用很少的程式碼就解決常見的問題。不管是什麼程式,你真正要寫的程式碼幾乎都與你自己的特定設定有關,其他具有普遍性的問題都有現成的函式庫可以呼叫。
- 句法短到令人生疑。
- 這種語言的抽象程度很高
- 語言的核心很小,但很強大。
- 以層的方式構建。
- 所有細節對使用者都是透明的。
這種語言提供的抽象能力只是為了方便你的開發,而不是為了強迫你按照它的方式行事。事實上,它鼓勵你參與它的設計,給你提供與語言創造者平等的權力。你能夠對它的任何部分加以改變,甚至包括它的語法。它儘可能讓你自己定義的部分與它本身定義的部分處於同等地位。這種夢幻般的程式語言不僅開放原始碼,更開放自身的設計。
在這本書中保羅 · 格雷厄姆非常推崇Lisp這門語言。3月16日,中國lisp技術愛好者齊聚圖靈,進行了一場充滿歡樂氛圍的交流活動。
本次lisp技術沙龍報名比較踴躍,報名了100多人參加會議。圖靈這邊也提前做了準備,最大限度的騰出空間佈置場地,還臨時徵用了編輯們的椅子。結果準備還是不足,雖然提前公佈了場地人員限制,但還是難擋大家的參加活動的熱情,現場人員爆棚,晚來的人員只能站在聽講,小編在這裡也先抱歉則個。
相機的視線後方還有許多站著聽講的人,Lisp語言的號召力還是很強的。在開場自我介紹的環節有幾位參會者提到,就是看了《黑客與畫家》這本書才投入到了Lisp的懷抱之中。看來保羅 · 格雷厄姆對於Lisp這門語言的推廣功不可沒。
好書總是值得人們一讀再讀,當你放下它的時候,它總是在那裡默默的等待著你的下一次翻閱。讀過《黑客與畫家》這本書的人都會有這樣的體會,每次閱讀都會有一些新的心得體會。
活動的第一位演講者帝歸(花名),他給大家分享了 《小議Clojure與其它Lisp的異同》。帝歸也是一位Lisp語言的實踐者,在進入大學後開始程式設計,陰差陽錯的進入了Lisp的世界。他從Lisp語系的歷史、語法及程式設計正規化、工具鏈、執行時等幾個方面和大家進行了探討。
現場提問環節有人問到 ,現在哪一種語言更有發展?有人說是Clojure,也有人並不認同,也有人說這個問題就是像《黑客與畫家》中所講的“一百年後的語言”一樣。
第二位演講者沈鋒給大家帶來了《Clojure Web簡介——少了框架,日子更美好》。他在現場直接程式設計講解。他也說道自己是一個實踐者,喜歡code。寫過Java、搞過Python,最後鍾情Clojure,投入Lisp的懷抱。沈鋒的幽默風趣也引來了大家的陣陣笑聲。
來自ThoughtWorks 的第三位演講者韓鍇與大家分享了《Prolog與Erlang起源》。講者並不使用Prolog與Erlang,只是對於新語言的熱情,讓講者對於Prolog與Erlang投入了大量的關注。
第四位演講者賴林華與大家分享了《Haskell 與 Yesod,利用 DSL 加速 Web 開發》。在提問環節聽眾問了一個問題“什麼叫純粹的語言?”,講者給出的答案是“純粹就是一個函式的輸入沒有副作用”。聽眾追問“你說所有的語言都是純粹的那麼所有語言都沒有副作用,那什麼是副作用”,講者的回答是“你在寫程式碼的時候是沒有副作用的,執行起來的時候才會產生副作用”。
第五位演講者包昊軍帶來了《我想讀原始碼》的10分鐘簡短演講。他也是現場程式設計與大家進行探討交流。
最後一位演講者,溫瑞雲與大家分享了《Clojure的力量之源》,也是一段10分鐘的簡短演講。講者結合自己的實踐,介紹了Clojure與C++對比的感受。
最後在整個活動結束後,一定要來一張合影。很多人都堅持到了活動的結束。
後記(轉自維基Lisp中文社群)
Lisp的歷史
Lisp的歷史十分悠久,僅次於Fortran,是第二古老的語言。 而對於Fortran,語言學家給予的負面評價遠比正面評價多,甚至在很多場合被作為程式設計語言的反面教材; 但是Lisp則剛好相反,它一直被人們作為一個優秀作品的例子被大加讚揚,這些人中包括著名的電腦科學家,Smalltalk的發明人——Alan Kay。 有一個傳言,據說McCarthy當時想把這門語言的語法設計往後拖一拖,等到他把一些有趣的事做完之後,再回過頭來給這門給予Lambda演算理論的語言加上一些數學家們熟悉的語法,可是他的一個學生發現,在一個還沒有定義正式語法的抽象語法上中寫程式,感覺非常好,於是McCarthy乾脆就決定不定義Lisp的語法。
直到如今,Lisp的“語法”定義中值得一提的規則似乎只有一條“括號要配對”,其它的都是“語義”上的規範。 這樣做當然不是沒有代價的,很快Lisp就出現了第一個分支Scheme。這個語言由Guy Steele, Jr.和他的老師Gerald Sussman設計。這兩位最開始的工作是改進Lisp,他們共同把Lisp由Dynamic scope變成了Lexical scope。今天幾乎大家熟悉的所有語言都是Lexical scope。後來他們共同把Continuation這個概念引入了Lisp,於是一門新語言就這樣誕生。 隨後,Sussman把Lexical scope和Scheme中的一些其它概念都引入了Lisp,並由此確立了Common Lisp的標準,Sussman本人也一直是Common Lisp的主力。
作為一門最早出現的FP語言,Lisp當然有它的缺點,其中最為人詬病的恐怕就是括號了,所以隨後出現的許多FP語言都試圖使用另外的語法來清晰的描述程式,這其中最著名的當屬Haskell,Haskell是一門“純正”的FP語言,在Haskell中,變數不能賦值,沒有迴圈,甚至沒有程式流程,一切都是函式。
相關文章
- 就要這個範兒——娶妻當娶LinuxLinux
- 圖靈社群線下沙龍——Linux就是這個範兒圖靈Linux
- 技術沙龍|原來落地AI應用是這麼回事兒!AI
- 【ACOUG】Oracle技術愛好者的樂園Oracle
- 技術愛好者的地球漫遊指南
- 就要技術範!2019TechWorld技術嘉年華•黑客馬拉松完美落幕黑客
- TechWorld回望來路,技術範兒依然很酷
- 試讀《Linux就是這個範兒》有感Linux
- 《Linux就是這個範兒》試讀有感Linux
- 試讀《Linux 就是這個範兒》 有感Linux
- 科技愛好者週刊(第 250 期):新技術的最大風險
- 【沙龍】2014新疆(天山論劍)首屆Oracle技術分享交流沙龍-現場留念Oracle
- 科技愛好者週刊(第 179 期):AR 技術的開啟方式
- 科技愛好者週刊(第 292 期):所有程式碼都是技術債
- 科技愛好者週刊(第 303 期):技術封建主義
- 科技愛好者週刊(第 288 期):技術寫作的首要訣竅
- 科技愛好者週刊(第 323 期):技術公司的口號比拼
- iDev 創業技術沙龍--大資料專場IDEdev創業大資料
- 科技愛好者週刊(第 192 期):最大的機會來自新技術
- docker技術沙龍學習Docker
- 如何才能成為一個好的技術領導者?
- Linux就這個範兒 第14章 身在江湖Linux
- 「技術綜述」閒聊影象分割這件事兒
- lisp 開發規範。Lisp
- 這些年,我是如何當好一個技術支援的
- 運維新勢力技術沙龍,大咖們這麼說!運維
- 科技愛好者週刊(第 310 期):內容農場的 AI 賺錢術AI
- 科技愛好者週刊(第 305 期):隨機數,這是一個問題隨機
- 掘金 x 餓了麼技術沙龍 | 架構實踐專場架構
- 宜信OCR技術探索之版面分析業務實踐|技術沙龍直播速記
- 請教這個應用技術如何實現?
- Photoshop愛好者應該收藏的42個網站網站
- 就是這個味兒~15款復古範兒十足的WordPress主題推薦
- 阿里雲棲開發者沙龍(Java技術專場)火熱來襲!阿里Java
- 健身愛好者的福音!這些運動手錶更專業
- 一個IT愛好者眼中的Windows Phone和Android PhoneWindowsAndroid
- J2EE技術討論小組QQ群:2545806,歡迎其愛好者加入!
- 程式設計愛好者喜愛的原始碼站程式設計原始碼