動態語言和虛擬機實現, 暨介紹一下我設計的一個新型的動態語言(3)

接下來的任務, 就是逐步考慮語法的細節問題. 前臺後臺需要同時對照, 權衡利弊, 得到一個比較好的方案.
語言名稱:snail (蝸牛, 取意緩慢, 我想我的進度會比較慢, 權當snail爲一個核試驗場吧, 慢工出細活, 有所創新, 有所發現, 以及一個好用的動態語言引擎, 是本次項目的宗旨)
host: 暫時放在我的一個開源項目中, dedict. 因爲還沒有里程碑式的成果, 所以作爲一個組件存在. 等到0.1版本出來, 和一些朋友交流一下看看. 差不多在考慮是否有必要單獨作爲一個項目.
語言目標: 通用腳本語言, 不考慮專用平臺, 或者專用領域.
開發環境:vc2005, g++, 使用stl和crt, 時刻保證可移植性, 畢竟linux下面的愛好者的力量不可小看了.
基本設計思想:
  結合scheme和python. 以一個類python, java的前臺, 後臺runtime引擎爲lisp. 說得理論一點, 就是用S-EXP作爲指令集. dict based 語言 區別於c,c++, c#等 stack based的語法.
        s-exp的內核會有一個最大的好處, 就是爲內核, 微得令人振奮. 連+-*/都不在內核裏面支持, 真是令人不幸呢. 這裏s-exp就變成了s-code.沒有結合律, 沒有優先級, 沒有表達式, 天哪, 這事多麼爽的一件事情啊.
       微內核使得高擴展性成了可能, 也是必須的. 可以提供相當豐富的內建擴展. 很多東西都隔離開了, 所以, 某些性能優化狂人, 也可以做一些天書版的性能優化, 作爲一個擴展存在.
       snail的兩大利器, dict, 遞歸, 還有可以list(語言上可以沒有, 不過性能上考慮, 可以保留).
      
      好了, 基本這樣就可以了, snail將用慢悠悠的步子, 爲大家講述一個編譯的故事, 講述一個世界的故事..




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章