ML一般被归为非纯函数式编程语言,因为它允许副作用和指令式编程。这一点和纯函数式编程语言例如Haskell很不一样。

ML特性有惰性求值的求值策略,一阶类型函数, 带有垃圾收集的自动内存管理, 参数多态,静态数据类型,类型推断,代数数据类型,模式匹配和异常处理。

不像Haskell,ML使用表达式求值,也就是说所有的子表达式总是被求值。导致的一个结果是你不能使用无穷表。然而,惰性求值产生的无穷表可以通过使用匿名函数来模拟。

今天在ML家族中有好几种语言:两种主要的方言是Standard ML和Caml,其他的包括F# - 针对Microsoft .NET平台的开放研究项目。 ML中的思想影响了众多的语言,例如Haskell,Cyclone和Nemerle。  ML的实力大多被用于语言设计和操作(编译器、分析器、定理证明机), 但是它作为通用语言也被用于生化,金融系统,和宗谱数据库,一个P2P的客户/服务器程序等等。

ML可以算一种具备命令式语言特点的函数型语言,或者说面向函数的命令型语言。和Lisp一样,ML具有非常灵活的函数功能。例如一个表达式的值可能就是一个函数,这个函数可以被作为参数传递给另一个函数,或者函数的返回值就是一个函数。同时和Algol类的语言比较接近的是,ML的语法象命令型的,而且用起来象用Algol家族的很多比较新的后代们一样方便。而且ML有并行扩展,可以用来写并行系统;甚至还有面向对象扩展。

John C. Mitchell在他的Concepts in Programming Langugaes一书中使用ML来展示Algol类语言、Lisp类语言、以及并行语言和面向对象语言中的概念。

ML是Robin Milner主管LCF项目时设计的。LCF项目是受Dana Scott给出的一组逻辑原则启发而设立的,致力于开发一种“可计算函数逻辑”(Logic of Computable Functions)。Robin Milner的目标是构造一个方便实用的系统,来自动的或者半自动的证明函数程序中一些有趣的性质。他的LCF项目于1970年在Standford开始,并于1980年代在Edinburge继续进行。期间取得了很多重要进展,并且激发了相关领域的一系列研究工作。

相关查询: 副作用 这一点 Haskell
最新查询:超感觉 登陆作战 摩泽尔河 开发协会 lior 教学大纲 归纳逻辑 交界镇古人类洞穴遗址 协议 新闻通讯社 不称职 Honeywell 北流县 净资产 暗之帽子与书之旅人 直系亲属 糯香地瓜粥 再利用 东京市 古地中海 古木参天 金喜庆 马达加斯加金粉守宫 中大国际 菟丝子 上海新城尚上城 几经周折 五彩苦瓜 洪斯吕克山 朝仓摄 西山枫林四期 织发补发 蓝翔之歌 jo 理学院 通和盛世 untrusting 社会学界 黑穗病 包围圈 大键琴 台顿 龚俊锋 第一步 花花世界 凸多边形 乌尔都语 爱德华·米其林 优秀奖 Ergocalciferol 古利德维肯 多样性 持股公司 权钱交易 安普霉素 凄凄凉凉 营业税 历城区交通局 Chronicles 若望二十二世 泽巨蜥 土拨鼠 流歌醉夜 弹劾权 隶属于 标准化期货合约 西奈半岛 高丽参猪心汤 十六进制 军事设施 Contingency 人首翼兽像 下寨村 深圳市邵阳商会 国中生 情报机构 鱼水之欢 光电池 woodceramics ML语言
友情链接: 知道 电影 百科 好搜 问答 微信 值得买 巨便宜 天天特价 洛阳汽车脚垫 女装 女鞋 母婴 内衣 零食 美妆 汽车 油价 郑州 北京 上海 广州 深圳 杭州 南京 苏州 武汉 天津 重庆 成都 大连 宁波 济南 西安 石家庄 沈阳 南阳 临沂 邯郸 保定 温州 东莞 洛阳 周口 青岛 徐州 赣州 菏泽 泉州 长春 唐山 商丘 南通 盐城 驻马店 佛山 衡阳 沧州 福州 昆明 无锡 南昌 黄冈 遵义
© 2026 haodianxin 百科 豫ICP备14030218号-3 消耗时间:0.010秒 内存0.84MB