Recursion 一种语言可以自己书写吗?

Recursion 一种语言可以自己书写吗?,recursion,programming-languages,Recursion,Programming Languages,有没有可能把一种语言的结构设计成可以自己书写的形式?你能用c写一个c编译器,或者用python写一个python解释器吗?如果不是,那么源代码是否可以重新写入自身?如果是这样,您是否需要使用另一种语言的任何组件,即在python脚本中运行编译的c?事实上有这样的例子吗?有 它只需要前置程序。在某个时候,有人在asm中编写了一个没有编译器的编译器。 我想是的 它只需要前置程序。在某个时候,有人在asm中编写了一个没有编译器的编译器。 我想。是的,一种方法是写一个,它的优点是很容易理解或写一个简单的

有没有可能把一种语言的结构设计成可以自己书写的形式?你能用c写一个c编译器,或者用python写一个python解释器吗?如果不是,那么源代码是否可以重新写入自身?如果是这样,您是否需要使用另一种语言的任何组件,即在python脚本中运行编译的c?事实上有这样的例子吗?

它只需要前置程序。在某个时候,有人在asm中编写了一个没有编译器的编译器。 我想是的

它只需要前置程序。在某个时候,有人在asm中编写了一个没有编译器的编译器。
我想。

是的,一种方法是写一个,它的优点是很容易理解或写一个简单的。最著名的教科书示例可能是的第4章,该章探讨了如何实现Scheme的子集。虽然如果你想学习一般的解释器和编程语言,我认为这是一个更好的起点


对于生产语言,您通常需要的不仅仅是一个简单的解释器,但您仍然可以在某个时候引导实现。对于最近的一个例子,编译器是自己编写的。

是的,一种方法是编写一个,它的优点是很容易理解或编写一个简单的编译器。最著名的教科书示例可能是的第4章,该章探讨了如何实现Scheme的子集。虽然如果你想学习一般的解释器和编程语言,我认为这是一个更好的起点


对于生产语言,您通常需要的不仅仅是一个简单的解释器,但您仍然可以在某个时候引导实现。在最近的一个例子中,编译器是自己编写的。

您要查找的关键字是

其他通常是自托管的程序包括内核, 汇编程序、shell和版本控制软件

自托管的编程语言包括Ada、BASIC、, C、 CoffeeScript、F、FASM、Forth、Haskell、Java、Lisp、Modula-2、, OCaml、Oberon、Pascal、Python、Scala、Smalltalk和Vala

还有一个编译器不在我使用过的列表中,那就是

以及相关术语

有一些语言有着特别优美的语言风格 自解释器,如Lisp或Prolog


你要找的关键词是

其他通常是自托管的程序包括内核, 汇编程序、shell和版本控制软件

自托管的编程语言包括Ada、BASIC、, C、 CoffeeScript、F、FASM、Forth、Haskell、Java、Lisp、Modula-2、, OCaml、Oberon、Pascal、Python、Scala、Smalltalk和Vala

还有一个编译器不在我使用过的列表中,那就是

以及相关术语

有一些语言有着特别优美的语言风格 自解释器,如Lisp或Prolog


Mono C编译器是用C编写的。是的。PyPy是Python中的Python解释器。GCC和G++是用C写的很长时间,现在用C和C++混合编写。是的,编译语言习惯于编写一个编译器。在此编译器中,您不需要其他语言的组件,但您首先需要一个辅助解释器或用现有语言编写的编译器。基本答案是否。当然,如果一种语言的编译器已经存在,那么您可以使用该编译器用该语言为该语言编写另一个编译器。这一点很明显,因为您可以使用编译器用该语言编写程序,因此,这并不重要。另一个不重要的原因是这个编译器或它的前身不能用那种语言编写。因此,不,你不能用编译器所使用的语言构建编译器,因为这需要编译器已经存在,如果存在,你就不需要构建。Mono C编译器是用C编写的。是的。PyPy是Python中的Python解释器。GCC和G++是用C写的很长时间,现在用C和C++混合编写。是的,编译语言习惯于编写一个编译器。在此编译器中,您不需要其他语言的组件,但您首先需要一个辅助解释器或用现有语言编写的编译器。基本答案是否。当然,如果一种语言的编译器已经存在,那么您可以使用该编译器用该语言为该语言编写另一个编译器。这一点很明显,因为您可以使用编译器用该语言编写程序,因此,这并不重要。另一个不重要的原因是这个编译器或它的前身不能用那种语言编写。所以不,你不能用编译器所使用的语言来构建编译器 因为这需要编译器已经存在,如果它已经存在,您就不需要创建它。