哪些真正的编程语言很容易为口译员编写?
对我来说,“真正的”语言是你可以用一个简单的Esoteric programming languages编写一个小项目的语言。
(我问,因为我想做一些爱好项目。)
答案 0 :(得分:11)
SICP中的Metacircular Evaluator是一个在Scheme中编写Scheme解释器的练习。这是一个常见的第一年CS项目。
答案 1 :(得分:6)
为编程编写解释器非常容易 语言Forth(一旦你知道如何 - 但它很好 记录)。 Forth一直用于解决实际问题 超过40年。
也许这太容易了,但你会在这个过程中学到很多东西。
一个轻松的(在线)介绍 Leo Brodie的“{FORTHTH”chapter 9。
答案 2 :(得分:5)
最初的Wirth's Pascal是一个很好的候选者,经常在解析器生成器中用作演示。它的语法是LL(1),否则相当严格,因此很容易解析。功能方面它也非常有限。
你可能想稍微调整一下,例如 - 例如你可能想忽略指针,但支持一流的字符串。
答案 3 :(得分:4)
等等。好的,现在我只是输入这个,因为我在答案中需要至少15个字符,但最小的Forth实现是几KB。很难想到任何其他可能拥有如此小核心的语言。也许是最初的McCarthy 1958 Lisp,其功能是手工编译的。
答案 4 :(得分:3)
Scheme或任何lisp变体。
答案 5 :(得分:1)
在我的大学操作系统课上,我们为Db(D-flat)编写了一个翻译。它非常简单,定义明确。
答案 6 :(得分:0)
我会想到一种标记语法语言,Liran。 语法结构使得解析变得容易,因为在开始和结束标记之间清楚地描绘了代码块。理论上,您可以轻松地构建一个解析和直接运行代码的1级解释器。
那里说没有任何标记语言可以在我看起来你想要的上下文中做有意义的事情(你可能想写自己的)。下一个最佳选择可能是功能最少的语言,最好不支持程序编程。像BASIC这样的语言应该很容易构建一级翻译。
下一个最好的事情可能是早期的脚本语言,它没有提供许多语法元素,而且复杂性相当短。我没想到。
但也许最好的选择是你设计自己的语言。解释器变得更容易构建,因为您对语言语法有深入的了解,并且可以在解释器中规则自己的语言结构和语义。
...
对1级口译员的坚持是因为你提到了你想要它很容易。