DSL
文章平均质量分 81
天下无敌笨笨熊
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PLY使用心得
越靠前的,算符优先级越低,同一层的算符优先级相同。当优先级相同的算符连续出现时,就要看是左结合还是右结合(代码里left和right所表示的含义),比如+和-是左结合,那么a + b - c执行顺序是(a+b)-c;再比如赋值是右结合,那么a=b=c的执行顺序是a=(b=c)会导致将关键字and和or也解析为ID,这不是我们想要的行为。最近在利用python做语法解析,使用了PLY,就是pyton里的lex+yacc。原创 2024-05-21 15:38:17 · 438 阅读 · 0 评论 -
DSL/API/GUI之辩
若用DSL表达,是这样:这是类SQL的语法,相比API要简单易懂很多。GUI的例子就是类似日志普通查询的GUI:搜索框+展示栏。原创 2023-05-22 16:29:41 · 684 阅读 · 0 评论 -
scala下DSL的设计与开发
我们考虑scala下的DSL实现,scala有一些特性可方便的支持内部DSL开发:函数curry化、隐式转换、对象方法调用无需点号和圆括号。 假设有下面的DSL: + 支持int、string、bool类型的字面量 + 支持in、not in操作,判断是否在一个tuple中,例如:”baba” in (“baba”, 1, 2) + 支持and、or操作符 + 字面量支持size方法 我原创 2017-08-18 20:59:18 · 3590 阅读 · 0 评论
分享