我是Elm的初学者,作为一名前Haskell程序员,我想知道,如果在Haskell中有类似的方式输入解释器/ REPL:
:i number
所以我知道这在榆树中不起作用,但有些东西与Haskell相同:
:i Num
我想获得有关类型类及其所有实例的详细信息。
此外,在Haskell文档中,有关于基本Haskell类的类型层次结构的可用信息:
https://www.haskell.org/onlinereport/basic.html
榆树也可以这样吗?
提前致谢。
答案 0 :(得分:8)
Elm没有类型类,因此它不能真正适用于显示有关它们的信息,正如GHCi :i
所做的那样。 Elm的内置类型(如字符串,数字和bool)的范围相当明显。
榆树的类型层次非常简单。有三个内置类型类型的变量。与将约束置于=>
之前的Haskell不同,只需直接使用这些类型变量即可。公平警告:Haskell用户通常会发现Elm的类型系统限制。 (凭借Haskell 20多年的领先优势,工具生态系统也不那么先进。)
number
是Int
或Float
。没有小数点的数字是number
。除了除法之外的算术可以对任一数字类型进行。comparable
可以是数字,字符,字符串,或递归地是可比较的列表或元组。可比较支持<
,>=
和类似。appendable
可以是字符串,文本(即带有排版信息)或列表(包含任何类型)。附录可附加(++)
。Eq
类型。试图将函数或信号等同起来会导致运行时错误。这样做的实际意义是:
Signal.dropRepeats
,则可能会崩溃。comparable
。设置元素也是如此。appendable1
或类似的。如果您想在浏览器中使用Haskell,请尝试使用PureScript。