• 请不要在回答技术问题时复制粘贴 AI 生成的内容
StepfenShawn
V2EX  ›  程序员

战争片看多了,用 200 行代码写了一个编程语言

  •  
  •   StepfenShawn ·
    Stepfen-Shawn · Oct 11, 2020 via Android · 7838 views
    This topic created in 2218 days ago, the information mentioned may be changed or developed.
    这个语言叫做 CF 语言(不知道是不是穿越火线打多了),用 200 行代码写的,没有调第三方的 Python 库,欢迎各位来 star 与提交贡献,也可以在语法方面给我提建议
    项目地址:
    https://github.com/StepfenShawn/cf-lang.git
    路过请给个 star 吧😄
    34 replies  •  2020-11-11 10:57:40 +08:00
    abersheeran
    abersheeran
    Oct 11, 2020❤️1
    1
    这个语法让我想起了 CS……不说了,打两局去。
    jeffh
    jeffh
    Oct 11, 2020❤️4
    2
    这不是编程语言把,这是 python 的正则替换而已,跑在 python 解析器上的。
    laike9m
    laike9m
    Oct 11, 2020 via Android❤️2
    3
    @jeffh 然而这并不妨碍它是一门新语言
    StepfenShawn
    StepfenShawn
    OP
    Oct 11, 2020 via Android
    4
    @jeffh 这个语言可以生成语法树,我只是想首先让它基于 Python 解释器上跑起来看看结果,后面我会编写解析语法树的代码
    jones2000
    jones2000
    Oct 12, 2020❤️7
    5
    建议楼主看下大学里面教的编译原理的书,里面很详细的写编译器原理。
    词法分析->语法解析->生成 AST->执行 AST 得到最终结果
    你写的这个估计这门课要挂。
    black11black
    black11black
    Oct 12, 2020❤️1
    6
    楼主要认真实现一个解释器或者编译器的话倒是挺有兴趣的,但是看了看是游戏之作,遗憾
    StepfenShawn
    StepfenShawn
    OP
    Oct 12, 2020 via Android❤️3
    7
    @jones2000 本人高中生一枚,还是比较菜,以后会继续学习:)
    Mutoo
    Mutoo
    Oct 12, 2020
    8
    图灵完备吗
    no1xsyzy
    no1xsyzy
    Oct 12, 2020
    9
    @jones2000 你说的这是解释器吧(
    23wEJhKrPYz2uRF5
    23wEJhKrPYz2uRF5
    Oct 12, 2020❤️1
    10
    我是觉得已经很厉害了 尤其是对于一个高中生来说
    JieS
    JieS
    Oct 12, 2020❤️1
    11
    哈哈,思路清奇,有点意思
    ofooo
    ofooo
    Oct 12, 2020
    12
    他比 python 优秀的特点有哪些呢?我觉得技术不是问题,设计思路是一开始应该想好的
    相比已经存在的语言,解决了哪些痛点
    crella
    crella
    Oct 12, 2020 via Android❤️1
    13
    没有可变长数组和哈希 /词典,也没有面向对象。
    crella
    crella
    Oct 12, 2020 via Android
    14
    话说是不是实现了 python 的词典类型就能搞简单的结构体和面向对象设计了?
    fakecoder
    fakecoder
    Oct 12, 2020
    15
    老哥 CF 哪个区的
    guokeke
    guokeke
    Oct 12, 2020❤️1
    16
    有趣
    FinnBai
    FinnBai
    Oct 12, 2020❤️1
    17
    这语法有点意思
    qq1340691923
    qq1340691923
    Oct 12, 2020❤️1
    18
    已 star
    fuchaofather
    fuchaofather
    Oct 12, 2020❤️1
    19
    鼓励一下。我高中时业余时间再看 极品家丁,跟 lz 一比啥也不是 😓️
    StepfenShawn
    StepfenShawn
    OP
    Oct 12, 2020 via Android
    20
    @ofooo 这是一个玩具语言,just for fun:)
    StepfenShawn
    StepfenShawn
    OP
    Oct 12, 2020 via Android
    21
    @qq1340691923 非常感谢!
    StepfenShawn
    StepfenShawn
    OP
    Oct 12, 2020 via Android
    22
    @crella 面向对象和函数的语法还没想好,非常抱歉
    no1xsyzy
    no1xsyzy
    Oct 12, 2020
    23
    @crella 甚至实现了 list 或者 tuple 就行,参见 Paul Graham 谈如何实现一个 CLOS
    northisland
    northisland
    Oct 12, 2020
    24
    看起来像是发明了一种方言
    meppy
    meppy
    Oct 12, 2020
    25
    很牛比了,工作 10 多年的菜鸡仰望下后辈,世界终究是你们的。
    shoa
    shoa
    Oct 12, 2020
    26
    我以为你在致敬 https://codeforces.com/contest/1331/problem/H 这道题
    Takuron
    Takuron
    Oct 12, 2020 via Android❤️1
    27
    @jeffh 木兰警告
    hexagon
    hexagon
    Oct 12, 2020
    28
    好中二啊、还啰嗦
    论有趣,你可以看看 dongbei 语言 https://github.com/zhanyong-wan/dongbei
    ytll21
    ytll21
    Oct 12, 2020❤️1
    29
    创意不错
    Jaeger
    Jaeger
    Oct 12, 2020❤️1
    30
    很有意思
    xinning1228
    xinning1228
    Oct 12, 2020
    31
    16 岁高中生可以了
    pythonee
    pythonee
    Oct 12, 2020❤️1
    32
    https://openframeworks.cc/

    我第一次想到的是这个
    StepfenShawn
    StepfenShawn
    OP
    Oct 12, 2020 via Android
    33
    @hexagon 感谢你的吐槽,这个我之前看过,还有那个文言文语言也很有趣
    gou7ma7
    gou7ma7
    Nov 11, 2020
    34
    @StepfenShawn #7 后生可畏啊!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1593 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 13:41 · PVG 21:41 · LAX 05:41 · JFK 08:41
    ♥ Do have faith in what you're doing.