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

求助: peg, ometa 解决什么问题,ometa-js怎么入门/正确理解和认知

  •  
  •   yolio2003 · 2013-09-16 11:19:51 +08:00 · 3521 次点击
    这是一个创建于 4086 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我自己想实现语言内部的dsl

    于是找到了以下项目

    但是很久都弄不明白他们到底是怎么做到词法/语法分析的?

    参考:
    pypeg http://fdik.org/pyPEG/
    ometa http://www.tinlizzie.org/ometa/
    ometa-js http://www.tinlizzie.org/ometa-js/


    很奇怪为啥我啃了很久文档还是看不懂

    为什么中文资料非常少,貌似国内很少有人关心这块?

    同时我也发到了 segmentfault 上: http://segmentfault.com/q/1010000000308366
    4 条回复    1970-01-01 08:00:00 +08:00
    krazy
        1
    krazy  
       2013-09-17 11:23:56 +08:00
    现在是想实现一个parser 还是一个parser生成器..
    yolio2003
        2
    yolio2003  
    OP
       2013-09-17 11:27:20 +08:00
    想实现一个parser, 主要问题是不是特别理解peg语法
    krazy
        3
    krazy  
       2013-09-17 12:08:06 +08:00
    @yolio2003 一些饿i
    上下文无关文法(CFG)和PEG的主要区别是CFG选择无序,PEG选择有序。
    对应起文法的描述,CFG的(E)BNF描述和PEG的PEG记法只有一些微小的差别,比如/和|的区别...

    pegjs这个例子还是蛮好理解的 http://pegjs.majda.cz/online
    yolio2003
        4
    yolio2003  
    OP
       2013-09-17 14:10:26 +08:00
    @krazy感谢 我确定是自己功力不够了,修炼bnf去,早都忘光了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2518 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:42 · PVG 23:42 · LAX 07:42 · JFK 10:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.