haskell入门

来源:互联网 发布:c语言答案王曙燕 编辑:程序博客网 时间:2024/06/16 13:03

haskell

haskell交流群->434427410

入门

haskell安装(for mac)

安装ghc(haskell的编译器)
brew install ghc
安装cabal(haskell的包管理工具,类似python的pip,ruby的gem)
brew install cabal-install

hello world

新建文件xppiao.hs
main = putStrLn "Hello, World!"
编译
ghc xppiao.hs -o xppiao
运行
./xppiao

相关特性

  1. 类型

    • 类型安全(type safe) -> 所有类型错误都会在编译阶段被发现
      • 内建类型 List Tuple Integer Char
    • 多态(polymorphic function) -> 函数可以接受不同的参数
    • 自定义类型(User-Defined Types) -> 关键词data
      • data Color = Red | Green | Blue | Indigo | Violet
  2. 小例子

    • 快排的定义

          quicksort  []           =  []    quicksort (x:xs)        =  quicksort [y | y <- xs, y<x ]                            ++ [x]                            ++ quicksort [y | y <- xs, y>=x]
    • length的定义

          :: [a] -> Integer    length []               =  0    length (x:xs)           =  1 + length xs

相关资源

文档

Haskell the hard way
haskell cookbook
基本语法
文档
基本概念

实践

FP课程
haskell的99个问题
haskell Quiz
48小时写一个scheme

图书

Real World Haskell

0 0
原创粉丝点击