3

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

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

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

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

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

谢谢你。

4

1 回答 1

6

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

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

于 2014-05-11T09:31:20.807 回答