前言
第四,通过我读过的几本手册,通常是用非常低级的术语来定义,通常是在汇编中。以这种方式定义Forth对于理解实现来说是非常违背直觉的,而且实际上只适用于编写基于程序集或其他基于底层语言的Forth端口到不同的系统/体系结构。
这可以在著名的JonesForth中看到,在这里,他实现了在汇编中实现速度所不需要的单词,并且模糊了程序集结束和第四部分开始之间的界限。
起跑是一项更好的工作,它以一种更容易理解的方式解释Forth,但是,由于它是针对Forth本身的教学,所以它在Forth解释器/编译器如何实际工作的问题上并不十分简洁,并且同样模糊了Forth的实现。
问题
我真正想问的是,在一个有效的第四次实施中,涉及到了什么?什么是高层次的模型,如何工作?据我所知:
这是我能确定的全部,因为在第四-83条必需的单词集中,解释是没有定义的,但是在Forth开始时,解释被定义为一个原语,用于检查字典中的一个单词,如果不检查它是否是一个数字,如果不是中止,则定义为一个原语。所有这些相互矛盾的信息,以及相反的缺乏有关福斯的信息,使整个福斯复杂的内心去理解。
发布于 2016-10-07 17:20:30
任何第四种实现都可以逻辑上分为以下层(或机制):
每个下一层都基于(并使用)前面的层。此外,还可以在引擎盖下使用一些额外的可重用模块(例如,堆栈、列表等)。
理解下一层需要理解前一层。在澄清了最初的问题后,这一答案也可以扩大。
https://stackoverflow.com/questions/39692290
复制相似问题