gpt4 book ai didi

compiler-construction - 引导编译器:为什么?

转载 作者:行者123 更新时间:2023-12-03 09:00:25 25 4
gpt4 key购买 nike

我了解一种语言如何能够自我引导,但是对于为什么您应该考虑使用 bootstrap ,我却找不到很多引用。

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

例如,引导C++编译器会很有意义-如果正确使用OOP,则与使用普通C相比,维护编译器可能会容易得多。

另一方面,MATLAB的确使矩阵数学比普通C容易得多,但是我看不出在MATLAB中编写MATLAB编译器/解释器有任何明显的好处-看来它变得不太容易维护。类似的观点可以应用于R编程语言。或者举个极端的例子,那就是用Haskell编写的引导Whitespace-绝对是Whitespace的巨大超集。

是 bootstrap 利用新语言功能的唯一原因吗?我知道还有“因为我们可以”的原因,但这不是我要寻找的:)

最佳答案

有一个原则叫做“吃自己的狗粮”。通过使用工具,您可以演示该工具的实用性。

经常被问到:“如果语言X的编译器不是用语言X编写的,为什么还要冒险使用它?”

当然,这仅适用于适合编译器编写 Realm 的语言。

关于compiler-construction - 引导编译器:为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1493747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com