手拉手一起来实现一门运行在 JVM 上的语言 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
KevinOfNeu
V2EX    程序员

手拉手一起来实现一门运行在 JVM 上的语言

  •  2
     
  •   KevinOfNeu
    KevinOfNeu 2018-09-06 20:31:58 +08:00 2447 次点击
    这是一个创建于 2643 天前的主题,其中的信息可能已经有所发展或是发生改变。
    这可能是有点冷门的一件事,跟编译器,JVM 相关,但不妨碍可玩性啊。起因是发现了一个不错的博客 http://jakubdziworski.github.io ,系列博文中讲述了如何一步步从零开始,实现了一门可以运行在 JVM 上的编程语言。

    于是我做了完整翻译,代码也照着撸了一遍。译文地址: https://blog.0xff000000.com/tags/Enkel/page/2/, 代码地址 https://github.com/KevinOfNeu/Enkel (欢迎 star fork pr )。

    原来博文的代码基于 Maven,并且代码的 commit 历史不干净,我改成了 gradle,并且按照博文重新编排了代码。系列博客中的代码错误在新的仓库中逐一更正了,并且打了 TAG。

    虽然 20 篇文章已经翻译完,但这门轮子语言还可以继续开发下去,玩具嘛,各位有想法的欢迎一起来玩。



    --------------------------------------------------------------------------------------------------------
    打过一次广告,反应平平,再试试,我一定是发错了主题。。。。逃)
    8 条回复    2018-09-08 01:20:26 +08:00
    xuanwu
        1
    xuanwu  
       2018-09-07 05:58:50 +08:00   1
    支持. 小建议: 不妨采用中文关键词. 源代码使用中文命名更好.
    之前的一点个人尝试:
    - Antlr4+ Java 实现中文语法的简单编程语言(开头) t/482717
    - Antlr4+Javascript 实现中文语法的 LOGO 语言子集, 带在线演示 t/482519
    dhairoot
        2
    dhairoot  
       2018-09-07 07:07:57 +08:00 via Android
    m
    VVVVVEX
        3
    VVVVVEX  
       2018-09-07 08:19:22 +08:00
    中文好 low
    guixiexiezou
        4
    guixiexiezou  
       2018-09-07 14:16:42 +08:00
    支持一下,很不错
    KevinOfNeu
        5
    KevinOfNeu  
    OP
       2018-09-08 01:18:26 +08:00
    @guixiexiezou 谢谢
    KevinOfNeu
        6
    KevinOfNeu  
    OP
       2018-09-08 01:19:09 +08:00
    @VVVVVEX why
    KevinOfNeu
        7
    KevinOfNeu  
    OP
       2018-09-08 01:19:30 +08:00
    @dhairoot star 了吗哈哈哈哈
    KevinOfNeu
        8
    KevinOfNeu  
    OP
       2018-09-08 01:20:26 +08:00
    @xuanwu 算了 中文不太习惯 哈哈哈啊总感觉在写诗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5607 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 03:03 PVG 11:03 LAX 19:03 JFK 22:03
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86