functional-programming - 纯功能性 Racket

标签 functional-programming racket purely-functional

所有会改变状态的 Racket 程序是什么? 我正在尝试创建一个副作用尽可能少的程序

所以,我会做类似的事情:

#lang racket/base
(provide (except-out (all-from-out racket/base) set! …more here…))

除了set我还应该排除什么! ? 是否有所有不纯函数的完整列表?

哦,该程序还使用了#lang racket/gui(据我所知,这主要是不纯的)。所以这可能很棘手......

谢谢。

最佳答案

Racket 中没有预先构建的非纯函数列表。 如果您只是避免使用任何带有!在名字中,你会亲近。

请注意,您可以使用可变数据结构并仍然以纯函数式方式进行编程 - 只要您不改变它们。

关于functional-programming - 纯功能性 Racket ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23583035/

相关文章:

python - str.strip 是否功能失调

Haskell:为什么这个 monad 转换是错误的?

JavaScript 函数式编程 - 嵌套循环

data-structures - 这个简单的纯功能队列有效吗?

haskell - 管理 FP 中的复杂状态

scala - Scala 中的副作用

functional-programming - 使用多图收集器收集线

scheme - 是否有加载 SRFI 的标准化方法?

eval - `eval` 和 `eval-syntax` 之间的区别

macros - 放!全局来自 Scheme 宏?