<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    scheme中文編程

    Posted on 2009-03-20 23:27 dennis 閱讀(3117) 評論(8)  編輯  收藏 所屬分類: 動態語言計算機科學與基礎
        受javaeye上的《Ruby中文編程》啟發,帖子中有人提到如果if這樣的關鍵字都可以定義成中文,那就是真正的中文編程。那時我就想到,這個其實要在scheme中實現是多么簡單,將sicp書中的解釋器稍微修改下就可以了,只要修改解析的部分即可。解釋器的完整代碼放后面,我們先看看有趣的例子:
    (定義 你 '男)
    (當 ((是 你 '男) (打印 '男人是泥土做的))
        ((是 你 
    '女) (打印 '女人是水做的))
        (否則
             (打印 
    '妖怪啊)))

        其實呢,“定義”等價于define,“當”等價于cond,“打印”等價于display,說穿了不值一提,只是有趣罷了。不過設想在某些效率不是攸關的場景嵌入這么一個scheme解釋器來定義DSL給業務人員使用,似乎也是不錯的主意。當然這里還是scheme的前綴表達式,再修改下就可以像自然語言那樣流暢,只不過括號還是少不了呀。

        再看幾個例子:
    (使得 ((a 3)
           (b 
    2))
           (
    + a b))

    (定義 成績 
    90)
    (如果 (
    > 成績 80)
          (打印 
    '良好)
          (打印 '要打PP了))
    ((函數(x) (* x x)) 3)  => 9

    (定義 (平方 x) (* x x))
    (平方 3)               =>9
       
        “使得”就是let,如果就是if,函數就是lambda。這不是中文編程嗎?也許可以考慮申請國家專項資金來扶持:D

        完整的解釋器代碼,在drscheme選擇R5RS標準下測試通過(代碼折疊,請展開):

    解釋器源碼


    評論

    # re: scheme中文編程  回復  更多評論   

    2009-03-21 12:44 by tri
    可見中文編程是一件多么愚蠢的事。
    干脆阿拉伯數字也別用,那是印度人發明的。
    干脆變量都用甲乙丙丁,干脆數學符號都改成“大于”、“乘以”

    # re: scheme中文編程  回復  更多評論   

    2009-03-21 19:03 by ttt
    感覺有點惡心

    # re: scheme中文編程[未登錄]  回復  更多評論   

    2009-03-29 13:38 by edwin
    能幫解決個 小問題嗎?用DRscheme 編段元代碼?
    若愿意的話,請發EMAIL通知我

    davidjondy@hotmail.com

    我將題發給你。。
    等待高手幫解決

    # re: scheme中文編程  回復  更多評論   

    2010-06-11 23:04 by guorui
    @tri
    不能太較真,只是好玩而已,別整那么嚴肅。

    # re: scheme中文編程  回復  更多評論   

    2011-11-14 23:53 by xion
    這個是一個很不錯的主意!!

    # re: scheme中文編程  回復  更多評論   

    2012-03-17 13:15 by coreBugZJ
    正在看 SICP,剛看到解釋器實現,學習了。

    # finance55525  回復  更多評論   

    2015-07-22 21:53 by You'll for certain do not have something to lose w
    You'll for certain do not have something to lose with Adiphene, thus for those that actually need to slim while not losing their time and power, then Adiphene is that the product for you. Perhaps the main reason behind this though is that you have developed a dependence on food. Glucomannan is among the most active hunger suppressants in Adiphene, and it works to suppress yearnings and help you handle your parts.

    # christmasvideogame7405  回復  更多評論   

    2015-10-11 22:46 by Hi! I just wish to offer you a huge thumbs up for
    Hi! I just wish to offer you a huge thumbs up for your excellent info you have got right here on this post. I'll be returning to your web site for more soon.
    主站蜘蛛池模板: 亚洲精品午夜国产va久久| 国产精品亚洲精品日韩已满| 亚洲国语在线视频手机在线| 一级毛片免费观看| 亚洲av色福利天堂| 亚洲一区二区在线免费观看| 亚洲AV无码码潮喷在线观看| 日韩免费的视频在线观看香蕉| 久久亚洲国产视频| 91精品手机国产免费| 91亚洲精品视频| 亚洲一区精品无码| 国产一级一毛免费黄片| 亚洲桃色AV无码| 久久成人免费电影| 亚洲国产精品张柏芝在线观看| 免费看AV毛片一区二区三区| 羞羞漫画小舞被黄漫免费| 国产国拍亚洲精品福利| 可以免费观看的国产视频| 亚洲一区综合在线播放| 免费在线观看h片| 色天使亚洲综合一区二区| 中文字幕亚洲日本岛国片| 免费A级毛片av无码| 日本亚洲免费无线码 | 免费看内射乌克兰女| 久久久久久a亚洲欧洲aⅴ| 亚洲视频免费观看| 亚洲av永久无码天堂网| 国产亚洲美女精品久久久| 91九色老熟女免费资源站| 婷婷亚洲综合五月天小说在线| 国产aⅴ无码专区亚洲av麻豆| 日韩中文字幕免费视频| 337p日本欧洲亚洲大胆人人| 亚洲欧洲日产国码av系列天堂| 免费下载成人电影| 一区二区三区在线免费| 亚洲三级视频在线| 亚洲精品无码午夜福利中文字幕 |