据我所知,
number
是一种内置类型类,类似于Java中的接口,它描述了可以对实现接口的类型执行哪些操作。但是,在Java中,从使用者的角度来看,接口被指定为普通类型,类型类是对类型变量的约束,由约定使用“魔术”类型变量名指定,例如
数
或
comparable
.
在具有“适当”类型类支持的语言中,例如Haskell,您可以单独指定约束,即。
Number a => a -> a
. 但是在Elm中,只有几个内置类型类,我认为学习概念和语法以便能够使用几个相当直观的内置类型类的负担是不必要的。虽然您可能无法直观地理解它的确切含义,但您应该能够很好地理解它,至少能够使用大多数函数
数
可比
作为论据。它的确切含义可以稍后解释(尽管有时我确实想知道官方的解释要等多久……)。