相关疑难解决方法(0)

第一个编译器是如何编写的?

我听说过鸡肉和鸡蛋以及自责.我有几个问题.

编写第一个将某些内容转换为二进制指令的编译器是什

汇编是编译还是翻译成二进制指令?

...我发现很难相信他们用二进制编写了一个编译器.

compiler-construction machine-instruction

161
推荐指数
6
解决办法
4万
查看次数

引导编译器:为什么?

我理解一种语言是如何自我引导的,但是我还没有找到很多关于为什么要考虑引导的参考.

直观的答案是您正在编写的语言提供了编译器的"基础"语言中找不到的实用程序,并且语言的功能相对非常适合编译器.

例如,引导C++编译器是有意义的 - 在正确使用OOP时,维护编译器可能要容易得多,而不是使用普通的C语言.

另一方面,MATLAB确实使矩阵数学比普通C容易得多,但我在MATLAB中编写MATLAB编译器/解释器时看不出任何明显的好处 - 看起来它的可维护性会降低.类似的视图可以应用于R编程语言.或者一个非常极端的例子是引导Whitespace,它是用Haskell编写的 - 绝对是一个巨大的超级空白集.

引导的唯一原因是利用新语言的功能吗?我知道还有"因为我们可以"的理由,但那不是我想要的:)

theory compiler-construction bootstrapping

30
推荐指数
5
解决办法
9838
查看次数

What language do they build other languages with?

What language is used to build low level languages like c++ and java?

How could you build the first language with no language?

c++ java programming-languages

25
推荐指数
3
解决办法
1294
查看次数

编程语言和编译器

我和我的朋友正在讨论,并意识到这可能是提出这个问题的最佳地点吗?

一种新语言是如何诞生的?这个新语言必须用一些旧语言OLD编写(例如C++在初始阶段用C语言编写),或者这是如何创建的?而且,如果没有编译器,这种语言NEW如何才能自行运行?那么,必须要有一些编译器吗?谁为它编写编译器?

那么,所有这些如何协同工作,新语言及其编译器,新语言与旧基础语言的关系如何?

compiler-construction programming-languages

7
推荐指数
1
解决办法
733
查看次数

5
推荐指数
2
解决办法
5154
查看次数