V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ltoddy
V2EX  ›  程序员

喜欢函数式编程和 C 的来看一下?

  •  1
     
  •   ltoddy ·
    ltoddy · 2018-05-16 07:24:59 +08:00 · 4060 次点击
    这是一个创建于 2384 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/ltoddy/scheme.c

    用 C 写的 Scheme 解释器,已经完成一大半了,玩一下?

    16 条回复    2018-05-16 19:14:48 +08:00
    PressOne
        1
    PressOne  
       2018-05-16 08:24:56 +08:00 via Android
    对用 c 和函数式编程的开发者精神上表示支持,力气有点费阿
    agagega
        2
    agagega  
       2018-05-16 09:18:29 +08:00
    乍看以为是单个文件
    svenFeng
        3
    svenFeng  
       2018-05-16 09:46:03 +08:00 via Android
    C 写解释器是真的丑啊。。。。。
    看这个姿势是从 sicp 学来的?
    ltoddy
        4
    ltoddy  
    OP
       2018-05-16 09:52:10 +08:00
    @svenFeng 没错啊。况且 SICP 就教。
    snailsir
        5
    snailsir  
       2018-05-16 09:59:19 +08:00   ❤️ 1
    动图妹子不错
    svenFeng
        6
    svenFeng  
       2018-05-16 09:59:59 +08:00 via Android
    @ltoddy sicp 里讲解释器的实现不是很好,可以看看 eopl
    ltoddy
        7
    ltoddy  
    OP
       2018-05-16 10:07:12 +08:00
    @snailsir illya dance
    ltoddy
        8
    ltoddy  
    OP
       2018-05-16 10:08:15 +08:00
    @svenFeng 嗯,等我以后工作之后稳定下来之后在看看。
    gleport
        9
    gleport  
       2018-05-16 10:18:26 +08:00
    试了一下还不完善啊,(define (f x) (+ x 1)) 会报 “ unbound variable ” 的错。楼主可以参考下 https://raw.githubusercontent.com/hmgle/yascm/master/tests/tests.scm 做测试,这个解释器核心程序用了几百行 c,就可以跑 sicp 的元循环求值器了。
    ltoddy
        10
    ltoddy  
    OP
       2018-05-16 10:25:10 +08:00
    @gleport 关于定义函数,还没做完,代码还没上去……
    gleport
        11
    gleport  
       2018-05-16 11:09:49 +08:00 via iPhone
    也贴下上面提到的那个 toy scheme 解释器实现: https://github.com/hmgle/yascm
    通过了 [Man or boy test]( https://en.m.wikipedia.org/?title=Man_or_boy_test)
    ltoddy
        12
    ltoddy  
    OP
       2018-05-16 11:37:38 +08:00
    @gleport 我就当锻炼一下了。
    gleport
        13
    gleport  
       2018-05-16 12:54:24 +08:00
    @ltoddy 欢迎加入 scheme 研究院微信群交流~
    ltoddy
        14
    ltoddy  
    OP
       2018-05-16 15:23:49 +08:00
    @gleport 额,鸭子大叔……
    gleport
        15
    gleport  
       2018-05-16 17:07:51 +08:00
    @ltoddy 在下 fractal,群主是鸭子。
    ltoddy
        16
    ltoddy  
    OP
       2018-05-16 19:14:48 +08:00
    @gleport 我跟鸭子有共同的群,他的群我就不进了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2787 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 15:06 · PVG 23:06 · LAX 07:06 · JFK 10:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.