haskell
文章平均质量分 68
crazyhacking
like a hacker
展开
-
haskell的学习步骤和资料
学习步骤1 函数式编程的思想 http://blog.csdn.net/crazyhacking/article/category/12808422 haskell初步参考自己的学习笔记3haskell进阶学习资料使用书本:《七周七语言》英文书本: http://learnyouahaskell.com/chapters查找函数hoogle :h原创 2012-12-04 14:33:09 · 1071 阅读 · 0 评论 -
haskell排序的操作
注意处理相同的元素1快排qsort []=[]qsort (h:t)=(qsort(filter (h) t))num (h:t)=filter (==h) (h:t)2冒泡(1)bubble_once [] = [] bubble_once [x] = [x] bubble_once (x : y : zs) | x转载 2012-12-04 14:28:21 · 2167 阅读 · 0 评论 -
haskell Standard list functions(列表的标准库函数)
-- Standard list functionsmodule PreludeList ( map, (++), filter, concat, concatMap, head, last, tail, init, null, length, (!!), foldl, foldl1, scanl, scanl1, foldr, foldr1, scanr转载 2012-12-04 13:17:34 · 3515 阅读 · 0 评论 -
3天学习haskell---haskell第一天
一 表达式和基本类型这个类似于命令式语言二函数函数是函数式编程的一等公民。这部分最重要的是递归函数。1基本递归例如,求阶乘代码:fact x=if x==0 then 1 else fact(x-1)*x2 模式匹配(实现递归)fact 0=1fact x=x*fact(x-1)3 哨兵表达式(为了改变模式匹配的顺序)fact x |x>1 =原创 2012-12-03 23:17:12 · 802 阅读 · 0 评论 -
Monad 最简介绍
Monad 最简介绍Haskell 是一门非常独特的编程语言,哪怕在函数语言中也很特立独行。它以彻底的纯函数和强大的类型系统闻名。Monad 就是由 Haskell 第一个引入编程世界的,它可算作目前为止编程中最难理解的概念了。几乎所有费心尽力最终理解了 Monad 的人都会有一种恍然顿悟的感觉,而且还忍不住会写一篇文章,跟大家分享他理解的 Monad 是什么,我也不例外。转载 2012-12-07 21:25:20 · 2863 阅读 · 0 评论 -
Monad-进阶理解
一 一个例子(按此贴的理解:http://blog.csdn.net/crazyhacking/article/details/8270930)定义:data Position t=Position t deriving (Show)stagger (Position d)=Position (d+2)crawl (Position d)=Position (d+1)r原创 2012-12-07 22:37:47 · 867 阅读 · 0 评论 -
3天学习haskell---haskell第三天
一类1 自定义类型data关键字用来定义自己的数据类型 (类型必须大写)data Rank=Ten | jack |queen |king |ace2 多态(1)backwards::[a]->[a]backwards []=[]backwards (h:t)=backwards t ++ [h][a]的类型是一个元素为任意类型的列表。(2)data Tripl原创 2012-12-05 15:25:41 · 904 阅读 · 0 评论 -
3天学习haskell---haskell第二天
本节最重要的是map和filter。他们的作用等价于list comprehension,如[x*2 | x foldl也比较重要,类似reduce函数,规约计算一 高阶函数所谓高阶函数,即输入输出均为函数的函数。1匿名函数(不常用,一般都用有名字的)语法格式为(\para1..paran->function_body)例如,连接字符串(\x->x++"world原创 2012-12-03 23:47:56 · 1037 阅读 · 0 评论