当前位置:  开发笔记 > 编程语言 > 正文

C#编译器是用C++编写的吗?

如何解决《C#编译器是用C++编写的吗?》经验,为你挑选了5个好方法。

C#编译器是用C++编写的吗?



1> Kent Boogaar..:

是的,但是有计划用C#编写一个C#编译器,我相信在这个播客中已经讨论过了.


@Josh:以前版本的编译器.它是迭代的,而不是递归的.他们没有使用相同版本的编译器来编译自己.相反,它们使用以前的版本实现下一版本的编译器.
它被称为Bootstrapping,并且使用用自己语言编写的编译器是相当普遍的.这通常也是一种自豪感,并标志着该语言的一个重要里程碑.http://en.wikipedia.org/wiki/Bootstrapping_(compilers)
没什么不寻常的.很大一部分"严肃"语言最终被自助托管.
要添加一个有意义的真实世界示例,使用去年的电动螺丝刀模型来组装今年的模型是不是错了?
这篇文章正在老化.用C#编写的C#编译器是现实(.Net)吗?
嗯,表面上看起来很傻,有点像用狗粮制作狗粮.不过,我确信它有价值.

2> Mohannad..:

是.

Mono C#编译器是用C#编写的.


编译单声道C#编译器的编译器是否也用C#编写?

3> Kakashi..:

.NET框架是用Simple Managed C(SMC)编写的

历史

在.NET Framework的开发过程中,类库最初是使用名为Simple Managed C(SMC)的托管代码编译器系统编写的.1999年1月,Anders Hejlsberg成立了一个团队来构建一种名为Cool的新语言,代表"C-like面向对象语言".[16] 微软曾考虑将名称"酷"作为该语言的最终名称,但出于商标原因选择不这样做.当.NET项目在2000年7月的专业开发人员大会上公布时,该语言已被重命名为C#,类库和ASP.NET运行时已被移植到C#.

来自:http://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29



4> dodgy_coder..:

微软编写的一个新的(截至2011年底)C#和VB编译器名为Roslyn,分别用C#和VB.NET编写.项目页面在这里.Roslyn编译器被编写为一个公开丰富的公共API的库.有一个新闻文章在这里它来自InfoWorld的.

更新:截至2014年4月3日,Roslyn是Apache License 2.0下的开源软件.



5> David Poklud..:

是的 - 作为CLR的大部分.如果你想看到CLR和/或编译器的内部,我强烈推荐Microsoft的Shared Source CLI(又名Rotor):

Microsoft下载

维基百科

共享源内部书籍

但是,实际上有一个用C#编写的编译器.我相信Mono就是那样写的.下载Mono资源并自行查找.

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有