1

我正在尝试学习命令式语言和函数式语言之间的区别。
而且,我想了解闭包以及垃圾收集器是如何实现的。所以我决定尝试为函数式语言实现解释器。

由于我不熟悉函数式语言,因此设计一种对我来说太难了。是否有一些关于简单函数式语言的语法和语义的资源?有关如何执行此操作的教程将非常有帮助。

4

3 回答 3

8

请考虑:

Implementing functional languages: a tutorial
Simon Peyton Jones and David Lester. Published by Prentice Hall, 1992.

可在线获取,其中涵盖了实现已编译的惰性函数式语言的日益复杂的方法。

跟进STG 机器论文,描述 GHC 运行时的核心。

于 2013-02-22T08:28:36.433 回答
6

奇怪的是,有。计算机程序的结构和解释这本书有练习,其中 Scheme 是在 Scheme 中实现的。但准备材料不能跳过。您将需要了解它(以及如何使用函数式语言进行编程),尤其是当您在解释器中实现解释器时。

于 2013-02-22T01:28:19.677 回答
1

你可能比阅读 John Allen 的 Lisp 剖析更糟糕。对于懒惰的语言。

于 2013-02-22T04:30:56.300 回答