haskell - 您将如何实现函数式编程语言?

标签 haskell functional-programming implementation

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .


6年前关闭。







Improve this question




在功能范式中,功能是主要的“控制结构”。例如,+运算符也被视为一个函数,您可以像传递任何其他“对象”一样传递它们。我想知道,如果我必须实现一种玩具函数式语言,我是将简单的函数实现为真正的函数(即将 + 转换为可调用例程)还是将它们转换为普通指令,然后将它们“内联”到翻译后的代码中.但是,使用第二种策略,我是否能够像在 haskell 中那样传递它们并部分应用它们?您对实现/翻译函数作为函数式语言的中心思想有何看法?

最佳答案

我可以推荐 PJL 的书。我在它的帮助下编写了一个编译器(在 1989-90 年,在 Prolog 中),这本书很好地介绍了这个主题。

它可能已经过时(写于 1987 年,30 年前),但它仍然很好地涵盖了基础知识。然而,它完全专注于像 Haskell 这样的惰性语言。当时 Haskell 还不存在,本书使用 LML 或 Miranda,这是一种前身语言,但语言非常接近。

关于haskell - 您将如何实现函数式编程语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15917729/

相关文章:

implementation - 类图操作

haskell - 将元组列表转换为列表列表 Haskell

haskell - Haskell 中的并行 HashMap

r - 从闭包生成函数列表

algorithm - 什么是尾递归?

java - 如何返回第一个发生的异常?

java - 该算法是否已正确实现?

c++ - STL容器插入元素和内存透视图

haskell - 为什么我不能在 Haskell 中执行 `null (Just 5)` ?

Haskell - Foldl 和 Foldr?