Haskell
iteye_14880
这个作者很懒,什么都没留下…
展开
-
抱怨 :: All about Monad
代码写得太BT,恶心死了 例: convert :: String -> Stringconvert s = let (Right str) = do { n <- parseHex s; toString n } `catchError` printError in str where printError e = return $ "At in...2009-04-04 20:42:10 · 109 阅读 · 0 评论 -
Haskell 资源
Haskell Wiki -- Haskell 相关的各种信息、资源及链接:http://www.haskell.org/介绍性的资源----Wikipedia 上的 Haskell 条目,相当不错的介绍:http://en.wikipedia.org/wiki/Haskell_(programming_language)How to read Haskell -- 阅读...原创 2008-11-18 21:31:11 · 303 阅读 · 0 评论 -
Show and Read
还不是特别明白,但是已经可以工作了。 附件是一个讲义原创 2008-11-19 09:15:56 · 129 阅读 · 0 评论 -
Monad 资源
1. A video of monad lectures on Youtube http://www.youtube.com/watch?v=9fohXBj2UEI 2.http://flolac.iis.sinica.edu.tw/lambdawan/zh/taxonomy/term/86 3.http://en.wikibooks.org/wiki/Haskell/Ca...原创 2008-11-20 21:51:36 · 301 阅读 · 0 评论 -
Wearing the hair shirt: a retrospective on Haskell
写道Simon Peyton Jones 在 POPL 2003 受邀演講 Wearing the hair shirt: a retrospective on Haskell 中花了不少篇幅介紹 monad,認為它是理論與實務的成功結合,並介紹了它的種種好處。Haskell 唯一的大錯誤,他說,是 monad 這冰冷生硬的數學名詞把人嚇跑了。我們應該把它取名為「暖暖毛毛的東西(warm, f...原创 2008-11-20 23:10:26 · 111 阅读 · 0 评论 -
为什么要学FP
1、抽象和模块化大幅提高生产力2、FP中函数是First-class elments,抽象能力进一步增强 由上,要进一步提高生产力,请学习FP原创 2008-11-21 12:33:03 · 141 阅读 · 0 评论 -
Iterate abstract --Prelude
熟悉Haskell的同志对这个标题很熟悉,iterate Prelude。然而这里的prelude只是本意,前奏曲。我想写点东西,讲讲我对haskell的理解和学习记录,这些文字即是开始。 计算机理论的发展,很大程度都是抽象的发展,iterate abstract 我想这个high-order function非常确切。 iterate abstract让我开始…… PS: 写...2008-11-21 19:55:00 · 74 阅读 · 0 评论 -
Iterate abstract --Basic
不存在“无中生有”,物理学家寻找基本粒子,我们即是上帝,数学家用定义和公理确定这些“基本例子”。下面我来总结一下Haskell里面最Basic的基本粒子。 Bool-- |The 'Bool' type is an enumeration. It is defined with 'False'-- first so that the corresponding 'Prelude.Enum...2008-11-21 20:34:12 · 89 阅读 · 0 评论 -
谈谈Haskell的抽象
数据抽象原子Tuples && Lists代数类型Monads函数抽象原子高阶函数多态(函数类)模块化(Modules)最牛的应该是函数可以像有机体一样叠加,无语,不可以这么强的。。...2008-11-22 22:01:02 · 191 阅读 · 0 评论 -
Haskell 学习记录
大概去年的这个时候,我听说了函数式编程这个词儿,一头雾水。大概半年前,想学Lisp,看到一大堆括号,木然了。半个月前的某个时候,我喜欢上了Haskell。第一天不知所云,第二天略有所知,第三天突然豁然开朗。Haskell大概就是我找寻多年的武器。强类型,避免了一些“指误”,惰性求值和高阶运算给了极大的抽象能力。但是猛然发现,几天后,自己竟然没有多少提高,于是决定回顾一下原来收集的那些经典书籍,希望...原创 2008-11-17 16:12:49 · 131 阅读 · 0 评论 -
关于Kibro
这是一个灵活性很高的fastcgi框架 kibro --> panda 可以看看这两个包的源代码,kibro写的极为妙,panda有点晕 注意:你的lighttpd版本一定是1.4.19,千万不要高版本,低版本我就不知道了。...原创 2009-04-14 20:25:14 · 196 阅读 · 0 评论 -
Write Yourself a Scheme in 48 Hours(1)
PRE:Write Yourself a Scheme in 48 Hours是我觉得比较好的教程之一,我想翻译它,借此留下我学习的痕迹,并能够与大家交流,希望大家指正。------------------------------------------------------------------------------------------- 1、概论 大多数网络上的H...2009-04-05 08:56:01 · 262 阅读 · 0 评论 -
Write Yourself a Scheme in 48 Hours(2)
2.第一步 首先,你需要安装GHC。在Linux环境,它常常被预安装了或者能够通过apt-get或者yum命令获得。它也可以从http://www.haskell.org/ghc/下载。二进制包大概是最容易的,除非你真的知道你在做什么。GHC应该像其他的软件包一样下载和安装。这个教程在Linux下面完成,但是如果你知道如何使用DOS命令行所有的东西应该...2009-04-06 09:36:37 · 164 阅读 · 0 评论 -
Write Yourself a Scheme in 48 Hours(3)
3.语法分析3.1:写一个简单的分析程序 现在,让我们试着写一个简单的分析程序。我们会使用Parsec库,这个库可能来自GHC但是如果你使用其他编译器这个库可能需要单独下载。 开始添加这一行在导入节(importsection): import Text.ParserCombinators.Parsec hiding (spaces) 这让我们...2009-04-07 10:53:06 · 189 阅读 · 0 评论 -
Parsec3
Parsec3和它的上一个版本变了不少,官方说法是应用范围更广了。 写道This is a first release of the Parsec 3, the Google Summer of Code ofPaolo Martini.The main changes are: * The Parser monad has been generalized into a ...2009-04-07 21:15:31 · 158 阅读 · 0 评论 -
Write Yourself a Scheme in 48 Hours(4)
4.求值,第一部分4.1开始求值 现在,我们仅仅能打印我们是否能分辨给定的代码碎片。我们将向一个工作的Scheme解释器迈向第一步:确定程序碎片的值。我们先从一些简单的阶段开始,但是很快你就能发展到可以计算。 让我们从告诉Haskell如何将各种可能的LispVal表示成字符串打印开始: showVal :: LispVal -> Stringshow...2009-04-09 21:10:56 · 156 阅读 · 0 评论 -
Write Yourself a Scheme in 48 Hours(5)
5. 插曲:检查错误目前,在代码的很多地方我们要么忽略了错误,要么静默的指定像#f或者0这种没有任何意义的“默认”值。一些语言 - 像Perl和PHP -用这种方式工作的不错。但是,它常常意味着那些错误在整个程序里安静的传递知道它们变成大的问题,这说明除错机制对程序员相当不方便。我们希望一旦错误信号发生它们立刻产生excution。首先,我们需要导入Cont...2009-04-10 19:19:25 · 132 阅读 · 0 评论 -
潜心修炼
看了很多,感觉已经知道monad是咋个回事儿了,面对却胆怯。 monad transformer 感觉自己还是需要多磨练磨练原创 2009-04-12 09:01:06 · 138 阅读 · 0 评论 -
CPS
http://library.readscheme.org/page6.html原创 2009-04-13 22:27:39 · 259 阅读 · 0 评论 -
我的学习Haskell经验
才学了一个月不到,谈不上太多的经验 1、现明白abstraction的概念,看看现在你用的语言的抽象能力2、Haskell--The Craft of Functional Programming 有中山大学乔海燕老师的简单翻译版(淘了老半天了)3、Haskell 98 (看看那些强大的数学家们怎么定义这个语言)4、All about Monads5、Real World...2008-11-22 22:10:54 · 344 阅读 · 0 评论