Introduction_to_Haskell, 这是我的书的源代码

分享于 

4分钟阅读

GitHub

  繁體 雙語
This is source code of my book.
  • 源代码名称:Introduction_to_Haskell
  • 源代码网址:http://www.github.com/HaskellZhangSong/Introduction_to_Haskell
  • Introduction_to_Haskell源代码文档
  • Introduction_to_Haskell源代码下载
  • Git URL:
    git://www.github.com/HaskellZhangSong/Introduction_to_Haskell.git
    Git Clone代码到本地:
    git clone http://www.github.com/HaskellZhangSong/Introduction_to_Haskell
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/HaskellZhangSong/Introduction_to_Haskell
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    Introduction_to_Haskell

    这是我的书的源代码。

    第19页最后一行代码( == ):: 均衡器a => a -> -> Bool,最后的a类型改为Bool

    第21页 2.2.3标题应该Enum而非Emum

    
    fact :: (Num a) => a -> a
    
    
    fact 0 = 1
    
    
    fact n = n * fact (n-1)
    
    
    
    
    
    Fact.hs:2:6:
    
    
    Could not deduce (Eq a) arising from the literal `0'
    
    
    from the context (Num a)
    
    
     bound by the type signature for fact :: Num a => a -> a
    
    
     at Fact.hs:1:9-25
    
    
    Possible fix:
    
    
     add (Eq a) to the context of
    
    
     the type signature for fact :: Num a => a -> a
    
    
    In the pattern: 0
    
    
    In an equation for `fact': fact 0 = 1
    
    
    
    
    
    fact :: (Num a, Eq a) => a -> a
    
    
    
    

    b : : Bool

    (Num a) => (a> a)> ((a> a),C)(Num a) => (a -> a) -> ((a -> a), C)

    
    > f xs = let len = genericLength xs in (len,len)
    
    
    
    

    第36页第一段代码isTwo类型签名应该为Int-> Bool,第二行Ture应该为True

    第61页第二段,只需要确定最低为(位)是否为0

    第51页/fromIntegral = sum xs/$ 长度xs应该改为= xs/( fromIntegral $ 长度 xs )

    第70页第一段代码,第一行改为fibonacci:: ( a,a,Eq ) => a ->

    
    msort [] = [] 
    
    
    msort [x] = [x]
    
    
    msort xs = merge (msort x1) (msort x2)
    
    
     where (x1, x2) = halve xs
    
    
     halve xs = (take l xs, drop l xs)
    
    
     l = (length xs) `div` 2
    
    
    
    

    第95页采用 5nature的结果应该为 [0,1,2,3,4] 而非 [1,2,3,4,5 ]

    第146页 Haskell 2000应该为Haskell 2010.

    第181页第3段代码,> runParsernum应该为> runParser编号

    第203页测试代码中,两处x-> (Maybe 6. 应该改为Just 6

    第221页第3段,第1行中"相邻读者"改为"相信读者"

    第237页第1行,"列表的字符"改为"字符的列表"

    **第280页 最下面倒数第2行的公式应该为m1T同构于m2Tm1,即同构符号右端的m2应该改为m1

    • 第285页第1段代码中m <- fresh应该插入到代码的第2行。代码中的mlabel"应该是mlabel

    第312页计算WW时,等号后面应该是希腊字母beta而不是数字8.

    第326页 Ivar'应为'Ivar'


    cod  Source  BOO  THIS  源代码  
    相关文章