【发布时间】:2010-12-22 05:11:24
【问题描述】:
我是 ocaml 的新手。 如果有人能帮助我理解,不胜感激 本书第 94 页提供的材料 “使用客观 caml 开发应用程序”。
难以理解以下段落的意思:
只是
(itl l)的评估发生在之前(ihd l)的评估,因此在imap的最后一次迭代中,l引用的列表 在我们检查它的头部之前变成了空列表。列表示例如下 即使我们没有得到任何结果也肯定是空的
imap (function x ! x) 示例返回
Uncaught exception: Failure("hd")
而不是
- : string ilist = {c=["one"; "two"; "three"]}
我认为
else icons (f (ihd l)) (imap f (itl l))`
会变成icons("one") ( ( icons("two") ( ( icon("three")([]) ) ) )
并返回
- : string ilist = {c=["one"; "two"; "three"]}
【问题讨论】:
标签: ocaml