哈斯克尔 - 让我们来表达

时间:2016-01-28 19:02:44

标签: haskell

我试图通过使用letin来复制本书的例子"学习Haskell以获得一个好的"。

问题是,虽然我以相同的方式编写相同的代码,但它并没有起作用,并且显示第二个" ="在第二个变量中。

任何人都可以帮我解决这个问题吗?

cylinder :: (RealFloat a) => a ->a ->a
cylinder r h = 
      let sideArea = 2*pi*r*h
          topArea = pi*r^2
      in sideArea + 2*topArea

1 个答案:

答案 0 :(得分:1)

这对我有用:

   Prelude CA> let cylinder r h = 
   Prelude CA|       let sideArea = 2*pi*r*h
   Prelude CA|           topArea = pi*r^2
   Prelude CA|       in sideArea + 2*topArea
   Prelude CA| 
   Prelude CA> cylinder 5 9
   439.822971502571

我想这只是一个缩进问题

   <interactive>:48:5: parse error (possibly incorrect indentation)