`
CharlesCui
  • 浏览: 427538 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Haskell惯用法

阅读更多
在这里总结一下我遇到的Haskell惯用法:

[a,b,c] !! 1


列表后跟两个感叹号和一个index,表示取出该列表中位于该index的元素。

GHCi中的一些宏命令:

:cd 更改当前目录

:load 或者 :l 加载module(hs文件)

:reload 或者 :r 重新加载最近一次加载的module文件

:type 或者 :t 显示后面表达式的类型

:help 列出常用的GHCi命令

Haskell中有Range这个类型,比如

let a = [1..10]

a这就是一个[1,2,3,4,5,6,7,8,9,10]的list,这个list等于[1..10]这个range

定义一个无限长度的list是这样写:

let a = [1..]

后面没有上线所以这个list就无限长

再介绍一个函数:

take 10 a

取出a这个list中的前10个元素

Haskell的一个语言特性是惰性求值

怎么体现Haskell的惰性呢?

我们刚才不是定义了一个无限长的List么?let a = [1..]

由于a没有定义上限,所以计算它的长度是永远也计算不完的,取a的元素也是取不尽的,

这样我们用take方法取a的前1000个元素,当你取的时候计算机就给你计算出这个range的前1000个元素,当你要取到1001个元素的时候,它再给你计算出第1001个元素,如果你不取,那些元素就是不存在的,这就是惰性。
2
0
分享到:
评论

相关推荐

    Haskell Cookbook.zip

    《Haskell Cookbook》是一本专为Haskell编程语言爱好者和开发者准备的实用指南。这本书以英文撰写,以PDF格式提供,被压缩在一个名为"Haskell Cookbook.zip"的文件中。Haskell是一种纯函数式编程语言,以其强大的...

    Real World Haskell PDF

    《Real World Haskell》是一本广泛认可的Haskell编程语言教程,旨在将这门函数式编程语言的理论与实践相结合,让读者能够在实际项目中运用Haskell。这本书的PDF版本是根据2015年3月1日的在线文档转制而成,确保了...

    Get Programming with HASKELL

    Get Programming with Haskell introduces you to the Haskell language without drowning you in academic jargon and heavy functional programming theory. By working through 43 easy-to-follow lessons, you'...

    Haskell教程(中文版)

    **Haskell教程(中文版)** Haskell是一种纯函数式编程语言,以其强大的类型系统、惰性求值和高阶函数特性而闻名。这本由Hal Daumé III编著并由乔海燕翻译的《Yet Another Haskell Tutorial》中文版,为初学者提供了...

    Haskell Cookbook 英文无水印pdf

    《Haskell Cookbook》是一本专为Haskell编程语言爱好者和开发者准备的实用指南。这本书以英文版的形式提供,没有水印,确保了阅读的清晰度和舒适性。Haskell是函数式编程领域的重要语言,以其纯函数、惰性求值和类型...

    Haskell 2010 Language Report

    Haskell 2010语言报告是Haskell编程语言的一个官方文档,详细阐述了Haskell语言的规范。Haskell是一种纯函数式编程语言,它提供了强大的类型系统和高度的抽象化能力。Haskell 2010语言版本是对早期Haskell 98标准的...

    haskell-chart, haskell的2D 图表库.zip

    Haskell是一种纯函数式编程语言,以其优雅的语法和强大的类型系统著称。在数据可视化领域,`haskell-chart`库提供了一种高效且灵活的方式来创建2D图表,这对于数据分析、科学计算以及教学等场景非常有用。这个库是...

    HaskellPart1_Haskell_

    **Haskell编程语言详解** Haskell是一种纯函数式编程语言,以其优雅的语法、静态类型系统和强大的编译器闻名。在本课程中,我们将深入探索Haskell的基础知识,了解其核心概念,以及如何利用这些特性来编写高效、...

    haskell-mode emacs

    Haskell 是一种功能强大的、纯函数式的编程语言,以其优雅的语法和强大的类型系统闻名。Emacs 是一款经典的、高度可扩展的文本编辑器,它提供了丰富的插件和模式来支持各种编程语言的开发,包括 Haskell。在 Emacs ...

    Haskell 文档

    ### Haskell文档知识点解析 #### 一、Haskell简介与历史 - **定义**: Haskell是一种纯函数式编程语言,以其简洁性和强大的数学模型为基础,成为研究和实际应用领域中备受推崇的语言之一。 - **特点**: 作为一种...

    Learning Haskell Data Analysis

    ### 学习Haskell进行数据分析 #### 一、前言 在《学习Haskell数据分析》这本书中,作者詹姆斯·丘奇(James Church)为读者提供了一种全新的方式来理解和处理数据集。本书不仅介绍了Haskell这门编程语言的基础知识,...

    haskell语言教程(learn you a haskell)

    《Haskell语言教程》是一本深受开发者欢迎的在线书籍,主要目标是帮助初学者深入理解Haskell这门纯函数式编程语言。Haskell以其强大的理论基础、严格的类型系统和静态类型而著称,它鼓励程序员编写简洁、清晰且易于...

    Haskell_Programming

    解释了Haskell中整数除法的规则,包括商和余数是如何计算的。 ##### 2.11 评估 讨论了Haskell中的评估策略,特别是惰性求值(lazy evaluation)如何影响程序的行为。 ##### 2.12 `let` 和 `where` 介绍了`let` 和 `...

    haskell简明课件

    ### Haskell语言基础 Haskell是一门纯函数式编程语言,它以数学为理论基础,具有高度的抽象性和强大的表达力。它采用惰性求值策略,这意味着表达式只在真正需要时才进行计算。Haskell没有变量的概念,所有的值都是...

    Haskell 编程入门五星教程

    Monads通过do记法使得处理有副作用的操作变得清晰和模块化。 6. **类型类(Type Classes)** 类型类是一种多态性实现,类似于其他语言的接口。它们定义了一组操作,这些操作可以应用于一组相关的类型。例如,Num...

    Haskell编程Haskell Programming

    这是Haskell编程的上一页,我们正在处理中,将那里的所有书籍都转换为新页面。 请每天检查此页面!!!

    haskell教程

    Haskell是一种纯函数式编程语言,它以其独特的语法和哲学吸引了许多编程者,尤其是初学者。函数式编程强调使用无副作用的纯函数来构建软件,这使得代码更易于理解和维护。Haskell入门教程通常会介绍如何在该语言环境...

Global site tag (gtag.js) - Google Analytics