Haskell语言的惰性计算特性.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Haskell语言的惰性计算特性

Haskell 语言的惰性计算特性 庞建民1 ,2 ,赵荣彩1 (11 信息工程大学 信息工程学院 ,河南 郑州 450002 ;21 英国 DURHAM 大学 ,Durham ,UK , DH1 3L E) 摘要 :惰性计算特性是函数式程序设计语言 Haskell 的重要特征 ,在开发软件时利用 Haskell 的 惰性计算特性解决了其它语言较难解决的一些问题 ,但如何在实际编程中充分利用这一特性 并不是一件容易的事情 。该文详细介绍 Haskell 的惰性计算特性 ,阐述如何用这些特性来编写 简洁优美的程序 。 关键词 :惰性计算 ;函数式语言 ; Haskell ;高阶函数 ;列表内涵 中图分类号 : TP311 . 5 文献标识码 :A 文章编号 :1671 - 0673 (2006) 01 - 0063 - 04 On the Features of Lazy Evaluation of Ha skell PANG J ian- min1 ,2 ,ZHAO Rong- cai1 (1. Institute of Information Engineering , Information Engineering University ,Zhengzhou 450002 ,China ; 2. University of Durham ,Durham ,UK ,DH1 3L E) Abstract :The features of lazy evaluation of functional programming language Haskell are very important . The authours have solved some difficult problems which are hard to deal with by other programming lan2 guages in developing software . But it is not easy to use these features in applications effectively. This paper introduces the features of lazy evaluation of Haskell in detail and explains how to design concise and beautiful programs by using them. Key words :lazy evaluation ; functional language ; Haskell ; higher-order function ; list comprehensions 些开放源代码软件中也包含了用 Haskell 语言开发 的一些工具包 。Haskell 语言的惰性计算特性对程 序的编写影响很大 ,考虑不周就会陷入死循环 。本 文的重点就是讨论这一特性 ,并通过实际例子来阐 述如何巧妙地利用它 。 1 Haskell 语言概述 Haskell 语言是一种基于 λ- 演算模型的“多态 类型 纯 函 数 式 惰 性 语 言 ”, 它 以 著 名 逻 辑 学 家 Haskell B . Curry 的名字命名 。其第一版 Haskell 110 诞生于 1990 年 , 目 前 发 行 的 版 本 称 为 Haskell 98 。 像大多数 函 数 式 语 言 一 样 , Haskell 是 一 个 强 类 型 语言 ,它既支持由基本类型构成的单态类型 ,如 Int 和 Char ,也支持像记录和联合这样的用户自定义的 结构类型 , 并且它还支持多态类型 。Haskell 语言 支持惰性计算 ,并且是无副作用的 。目前国外已经 有越来越多的程序设计爱好者使用该语??? ,用该语 言实现的软件系统越来越多 ,规模也越来越大 ,一 2 惰性计算特性 在我们处理数学计算问题时 ,当一个子表达式 的值不需要求出就能得到整个表达式的值的时候 , 我们自然不去求该子表达式的值 。但在程序设计 语言中 ,要想达到上述灵活性 ,就有一定的难度 ,这 就需要用到惰性计算的概念和技术 。 惰性计算是指只有在确实需要时才求值的一 收稿日期 :2005 - 10 - 10 基金项目 :欧盟项目 TYPES(types project 29001) 作者简介 :庞建民 (1964 - ) ,男 ,河北沧州人 ,信息工程大学教授 ,主要研究方向为计算机辅助推理与软件理论 。E- mail : jianmin pang @ hotmail . com 种计算理 念 。Haskell 之 所 以 被 称 作“惰 性 语

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档