【发布时间】:2015-07-13 07:32:22
【问题描述】:
在《Scala 中的函数编程》一书中,给出了几个什么是“副作用”的例子,其中之一是:
- 读取或写入文件
我可以理解“写入文件”并不纯粹,因为它改变了环境。但为什么“读文件”不纯呢?它不会改变任何东西。
看我的例子:
val readFile: File => String = file => readingTheContentFromFile(file)
【问题讨论】:
-
您是否考虑过仅读取文件的一部分会如何更改文件的“读取指针”,或者您是否只关心读取整个文件并假设文件的内容始终相同(诚然,这是一个延伸)?
标签: scala functional-programming