Programming languages 设计和实现一种编程语言,下一步是什么?

Programming languages 设计和实现一种编程语言,下一步是什么?,programming-languages,Programming Languages,因此,我设计了一种编程语言,并取得了足够的进展,我编写了示例代码并开始编写BNF。我想知道在写我的BNF的其余部分之前,是否有一个我可能想做的事情的清单?之后我该怎么办?我担心实现会花费很长时间(它和C++一样复杂,甚至可能比C++还要复杂)。我应该做些什么呢?还是应该考虑的事情?语言设计是很难的——在实现方面走得太远之前,额外的一双眼睛(或几双眼睛)可能有助于找到一些可以改进的地方。(特别是,如果它比C++复杂得多,你确定这是必须的吗?) < P>。语言设计是很难的——在实现方面走得太远之前,

因此,我设计了一种编程语言,并取得了足够的进展,我编写了示例代码并开始编写BNF。我想知道在写我的BNF的其余部分之前,是否有一个我可能想做的事情的清单?之后我该怎么办?我担心实现会花费很长时间(它和C++一样复杂,甚至可能比C++还要复杂)。我应该做些什么呢?还是应该考虑的事情?语言设计是很难的——在实现方面走得太远之前,额外的一双眼睛(或几双眼睛)可能有助于找到一些可以改进的地方。(特别是,如果它比C++复杂得多,你确定这是必须的吗?)

< P>。语言设计是很难的——在实现方面走得太远之前,额外的一双眼睛(或几双眼睛)可能有助于找到一些可以改进的地方。(特别是,如果它比C++复杂得多,你确定这是必须的吗?)

如果它比C++复杂,那么它可能需要重新设计。C++的复杂性很大程度上来自于提供C兼容性的需要,因此需要在不太美妙的C声明语法之上移植特性。如果您不需要支持现有的语言,那么很难理解如何证明这种复杂性

在自己设计并实现了几种语言之后,我推荐一种投资方法:

  • 设计小子集
  • 实施它
  • 使用它

随着经验的积累,设计一个更大的子集并重复。

如果它比C++复杂,则可能需要重新设计。C++的复杂性很大程度上来自于提供C兼容性的需要,因此需要在不太美妙的C声明语法之上移植特性。如果您不需要支持现有的语言,那么很难理解如何证明这种复杂性

在自己设计并实现了几种语言之后,我推荐一种投资方法:

  • 设计小子集
  • 实施它
  • 使用它

根据所学到的经验,设计一个更大的子集并重复。

关于SO的许多相关问题:特别是关于SO的许多相关问题:特别是