【问题标题】:Why are language-specific programs frequently written in the same language they are designed for?为什么特定语言的程序经常用它们设计的相同语言编写?
【发布时间】:2023-04-06 17:27:01
【问题描述】:
我正在浏览我经常使用的语言软件是用什么语言编写的,发现了一个有趣的趋势。为特定语言设计的程序往往有很大一部分是用该语言编写的。例如:
- Eclipse 是用 Java 编写的
- C# 和 C++ 中的 Visual Studio
-
dart-fmt(这是提示这个问题的原因)是用 Dart 编写的
我理解引导背后的原因,特别是关于编译器,但由于我给出的示例是 IDE 或其他工具,特别是不是编译器,他们为什么会选择用他们自己的语言编写应用程序?设计用于?用它们所设计的语言编写这些应用程序有什么好处?
【问题讨论】:
标签:
language-agnostic
theory
bootstrapping
【解决方案1】:
这没有关系,或多或少是巧合。
我在eclipse中写了很多C/C++ PHP,对结果很满意。
当然,可能还有其他一些逻辑。我的意思是,我不确定这里(但主要是猜测)。对于程序员来说,为某种语言编写一个好的IDE,程序员最好的语言应该是那个。因此,如果我编写 Java IDE,我将对 Java 有深入的了解,并且通常如果我编写软件,我会选择最简单/最快的途径来实现目标。在这种情况下,使用 Java 进行 Eclipse 是有意义的 - 但仅此而已。