Tag: ramda fantasy

Monadic IO与ramda和ramda幻想

试图找出IO monad是如何工作的。 使用下面的代码,我读取filenames.txt并使用结果来重命名目录testfiles中的文件。 这显然是未完成的,所以而不是实际重命名我login到控制台的任何东西。 🙂 我的问题是: 我打电话runIO两次,但它感觉只是应该只调用一次,到底? 我想使用renameIO而不是renaneDirect但无法find正确的语法。 任何其他build议也表示赞赏,我是新来的FP! var R = require('ramda'); var IO = require('ramda-fantasy').IO var fs = require('fs'); const safeReadDirSync = dir => IO(() => fs.readdirSync(dir)); const safeReadFileSync = file => IO(() => fs.readFileSync(file, 'utf-8')); const renameIO = (file, name) => IO(() => console.log('Renaming file ' + file + ' to ' […]