Language agnostic 有没有实现泛型的语言?
我喜欢上的讨论,并且想知道是否有任何语言特别好地使用了这个特性Language agnostic 有没有实现泛型的语言?,language-agnostic,generics,Language Agnostic,Generics,我喜欢上的讨论,并且想知道是否有任何语言特别好地使用了这个特性 我真的不喜欢Java的ListHaskell很好地实现了类型构造函数参数化(泛型或参数多态性)。Scala也是如此(尽管有时需要一点人手) 这两种语言都有更高级的类型(也称为抽象类型构造函数,或类型构造函数多态性,或高阶多态性) 请看这里:见鬼,英语甚至不能很好地实现泛型 我倾向于C。主要是因为这就是我目前正在使用的,并且我已经使用它们取得了很好的效果。我使用.Net(VB.Net),并且在使用泛型时没有遇到任何问题。基本上是无痛的
我真的不喜欢Java的
ListHaskell很好地实现了类型构造函数参数化(泛型或参数多态性)。Scala也是如此(尽管有时需要一点人手)
这两种语言都有更高级的类型(也称为抽象类型构造函数,或类型构造函数多态性,或高阶多态性)
请看这里:见鬼,英语甚至不能很好地实现泛型
我倾向于C。主要是因为这就是我目前正在使用的,并且我已经使用它们取得了很好的效果。我使用.Net(VB.Net),并且在使用泛型时没有遇到任何问题。基本上是无痛的
Dim Cars as List(Of Car)
Dim Car as Car
For Each Car in Cars
...
Next
使用泛型集合从来没有遇到过任何问题,尽管我自己还没有设计过任何使用泛型的对象。我认为Java中的泛型实际上相当不错。List
与List不同的原因是,我将把OCaml添加到列表中,它具有真正的泛型。我同意Haskell的类型类做得很好,但有点不同,Haskell没有OO语义,但OCaml确实支持OO。我认为C#和VB.NET在泛型方面做得很好。我基本上同意你的观点,但我要指出两件事:类型擦除有时会很痛苦,并且不能将基元类型与泛型一起使用。
Dim Cars as List(Of Car)
Dim Car as Car
For Each Car in Cars
...
Next