热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OCaml评估表达式,命令?

如何解决《OCaml评估表达式,命令?》经验,为你挑选了1个好方法。

add 是一个内置于OCaml的函数.

经验:

# add 5 1;;
- : int = 6

我的问题:评估的顺序是add 3 (add 5 3)什么?

# add 3 (add 5 3);;
- : int = 11

(add 5 3)第一至8评价,然后add 3 (8)进行评估,以11?或者add 3先评估一个函数,然后(add 5 3)用作函数的参数(add 3)

谢谢.



1> Jeffrey Scof..:

对于它的价值,没有任何名为add内置于OCaml的功能.(即,Pervasives模块中没有这样的符号.)

$ ocaml
        OCaml version 4.06.0

# add;;
Error: Unbound value add

OCaml中函数及其参数的评估顺序未指定.所以没有保证订单.

这在OCaml手册的第7.7.1节中有记录.

如果您希望按特定顺序let进行评估,则可以使用它来评估每个子表达式:

# let add a b = a + b;;
val add : int -> int -> int = 
# let temp = add 5 3 in
  add 3 temp;;
- : int = 11
# let tempf = add 3 in
  tempf (add 5 3);;
- : int = 11


推荐阅读
author-avatar
张伊韵育财育信
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有