BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

使用Irony编写新的.NET语言

| 作者 Abel Avram 关注 9 他的粉丝 ,译者 张龙 关注 14 他的粉丝 发布于 2009年11月4日. 估计阅读时间: 1 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

Irony框架是由Roman Ivantsov创建的,用于编写运行在.NET平台上的内部DSL或是全新的语言,其语法是用C#编写的。

Irony是CodePlex上的一个项目,借助它开发者可以使用C#设定语法来创建一门全新的语言。框架会生成扫描器与解析器并创建一个新的编译器。该项目包含了一个JSON实现示例:

该项目还包含了其他几个语法示例,如C#、SQL、Scheme、Script.NET、GwBasic、Ruby及Python,同时还有一个可视化的语法探测器。

目前Irony还处在Alpha阶段,基于MIT协议。使用它需要VS 2008和.NET 3.5。

参考资源:Irony on CodePlex表达式语法示例使用Irony编写VS语言服务

查看英文原文:Writing New .NET Languages with Irony

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

fun by 瑜珩 王

这个很有趣

fun by Yu Wang

sorry, 对DSL和相关背景了解不足. 一个基本的问题是, 这个工具可以帮助我们干什么, 尤其是在企业应用领域. 谢谢高人指点!

迷惑 by Chong (崇桦) Terry

不知道这个语言的目前是啥?
基于C#语法来兼容其他编程语言?

Re: fun by Fei Jordan

DSL语言针对多变的业务规则,可以让用户(未必是最终用户)来自己修改业务规则,而非是开发阶段写死,增强了灵活性。举个些简单的应用,运费的计算,绩效工资的技术等等。

Re: fun by lu wenhua

比如ERP的固定资产管理中用户可以按规定写一些表达式,来定义自己的折旧方式。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

5 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT