写点什么

Nitra:CLR 开源语言工具

  • 2014-06-05
  • 本文字数:619 字

    阅读完需:约 2 分钟

Nitra 是用于处理运行在 CLR 上的编程语言的工具集,JetBrains 前不久将它的源代码公之于众。开发者可以用 Nemerle 定义语法,然后 Nitra 根据定义来构建语法分析器并产生类,并以此描绘和导航抽象语法树(AST)。

Nitra 能够构建语法块并可以跨语言重用,这是很有趣的功能。Nitra 附带的模块,比如 whitespaces CStyleComments ,可以很轻松地应用在你自己语言的语法定义中。

使用 Nitra 需要三个步骤:

一旦你定义好句法、抽象语法树和语言分析器,你还能在 Visual Studio 中获得代码高亮、代码折叠和错误高亮的支持。其他功能比如静态分析、重构、导航和字符查找等功能也会很快面世。

这个项目相当得有志向。Nemerle 的开发者(同时也是 Nitra 的幕后开发者)计划在 Nitra 完成后使用它重写 Nemerle。然而,Nitra 仍然处于预览阶段,它还需要些时间来完善自己,尤其是缺少些诸如编译之类的功能。

JetBrains 著名的决定就是不使用Roslyn 支撑他们Resharper 的功能,特别是Resharper 要支持许多其他的语言,而Roslyn 仅仅是面向C#和VB 的。Nitra 看起来让这个多语言架构更加有扩展性。由于仅仅在Nitra 中定义语法就激活语言服务,JetBrians 将来可以更快的支持新语言,这是该项目的关键驱动因素之一。

你可以通过翻阅 Nita 源代码或者这个文档来了解更多信息。

查看英文原文: Nitra: Open Source Language Tooling For CLR

2014-06-05 20:551825
用户头像

发布了 21 篇内容, 共 61209 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

云原生机甲,真正的服务网格

如水

云原生 servicemesh 云原生机甲 CloudMecha

Apache Kyuubi 在B站大数据场景下的应用实践

网易数帆

hive Kyuubi spark SQL 企业号十月 PK 榜

Spring之定时调度

andy

企业办公转型的出路在哪里?华为云桌面开创办公新形式

爱科技的水月

选择华为云数据库,三大亮眼优势来助力

科技之光

Spring Boot「17」数据库连接池

Samson

Java spring 学习笔记 spring-boot 10月月更

“程”风破浪的开发者 | web3.0爆红是炒作还是真有赚头?

三掌柜

Web3.0 10月月更 “程”风破浪的开发者

Spring事务

andy

聚焦云计算、大数据、人工智能等开源技术,这场开源开发者的盛会不容错过!

开源社

#开源 COSCon'22 2022 第七届中国开源年会

云上作业就是这么轻松,华为云桌面的工作新体验

爱科技的水月

公共 IP 地址和私有 IP 地址有什么区别?

wljslmz

IP地址 网络技术 10月月更 公网ip 私网ip

Spring之资源读取

andy

“程”风破浪的开发者|从一大堆杂事中要效率

架构精进之路

学习方法 提升效率 “程”风破浪的开发者

数组元素积的符号

掘金安东尼

算法 10月月更

Spring之AOP

andy

对话熊飞2022:好的经营需要时间,TO B 从好产品好故事进化为好商业

B Impact

禅道项目管理软件功能、价格,及使用指南

PingCode

【web 开发基础】PHP 的流程控制之多向条件分支结构(switch) -PHP 快速入门 (16)

迷彩

switch case switch语句 10月月更 PHP基础 分支结构

华为云桌面,如何为企业构建新型工作方式

爱科技的水月

政企办公新入口,华为云桌面安全便捷更高效!

爱科技的水月

整个汽车产业链,都能“挤上”这朵云?

脑极体

数字经济浪潮下,企业如何通过数字体验平台(DXP)更好的与用户建立联系?

Baklib

客户体验

八大技术亮点,华为云数据灾备解决方案为企业数据铸就安全防护强

科技之光

灾变来袭不用怕,华为云数据灾备解决方案为你排忧解难

科技之光

Apache IoTDB v0.13.3 发布!

Apache IoTDB

数据库 Apache IoTDB

宝藏级别,GitHub上的SpringBoot核心笔记,讲得太清晰了

程序知音

华为云弹性云服务器助力打造更安全可靠、灵活高效的云空间

爱尚科技

华为云安全性、可靠性、资源、创新性跻身行业前列

爱尚科技

“程”风破浪的开发者|satoken实现优雅鉴权

codingyt

学习方法 安全 鉴权 10月月更 “程”风破浪的开发者

华为云桌面,如何用心保护企业安全?

科技之光

万物皆可集成系列:低代码对接阿里物流API实现快递跟踪

葡萄城技术团队

前端 低代码 电商 API

Nitra:CLR开源语言工具_.NET_Roopesh Shenoy_InfoQ精选文章