错误消息
消息中的 %s 表示引擎抛出错误时填入的具体内容。
小故事
你用 map,想对每个成员做点什么,可是你写的那个表达式,跟成员毫无关系。比如 xs 点 map,方括号里写一个五。这意味着什么?每个成员,得到的都是五。这不是在问成员的问题,而是在重复同一个答案。在 rush 里,map、reduce 这类方法,接受的是一个没有求值的、逐元素的表达式,它必须提到这个元素:可以叫 x、it、item,或者集合自己的名字;在 reduce 里,还可以用 acc,指累加器。不是 lambda,也不是把函数当值传进去。你写的表达式,没有提到其中任何一个,所以引擎拒绝了,而不是悄悄把五重复很多遍。怎么改?让表达式用到元素,比如 x 乘二。记住:逐元素,就要提到元素。
文本来自 Rush 引擎的错误目录。
