About: Type class

An Entity of Type: Abstraction100002137, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In computer science, a type class is a type system construct that supports ad hoc polymorphism. This is achieved by adding constraints to type variables in parametrically polymorphic types. Such a constraint typically involves a type class T and a type variable a, and means that a can only be instantiated to a type whose members support the overloaded operations associated with T.

Property Value
dbo:abstract
  • Type class, (en català: classe de tipus) en ciència de la computació, és un sistema de tipus que suporta polimorfisme ad hoc. Type class va aparèixer per primer cop al llenguatge de programació Haskell. La seva definició parteix l'univers dels tipus en classes, segons si implementen o no la signatura. (ca)
  • Typklassen sind ein Konstrukt der funktionalen Programmierung zur Implementierung von Ad-hoc-Polymorphie. Typklassen wurden für die Sprache Haskell entwickelt. Sie ähneln vom Prinzip her dem Konzept der Schnittstellen, haben aber nichts mit den Klassen der objektorientierten Programmierung zu tun. (de)
  • In computer science, a type class is a type system construct that supports ad hoc polymorphism. This is achieved by adding constraints to type variables in parametrically polymorphic types. Such a constraint typically involves a type class T and a type variable a, and means that a can only be instantiated to a type whose members support the overloaded operations associated with T. Type classes were first implemented in the Haskell programming language after first being proposed by Philip Wadler and Stephen Blott as an extension to "eqtypes" in Standard ML, and were originally conceived as a way of implementing overloaded arithmetic and equality operators in a principled fashion.In contrast with the "eqtypes" of Standard ML, overloading the equality operator through the use of type classes in Haskell does not require extensive modification of the compiler frontend or the underlying type system. (en)
  • (計算機科学の)型クラス(かたクラス、Type class)は、をサポートする型システムの機能である。のにを付加して、関数オーバーロードと演算子オーバーロードを実現するのが元々の目的になる。その型変数に当てはめられたデータ型は、それへの制約でカテゴライズされることになる。 典型的な型クラスは、型クラスTと型変数aとそのaを引数/返り値にしたの構成で宣言される。aに型Xを当てはめたインスタンス化宣言でXはTで制約されて、その型Xを引数/返り値にする関数と演算子もインスタンス化される。総称関数も型Xでインスタンス化される。 型クラスは、Standard MLのeqtypesで提唱された後に、Haskellで初めて導入されている。その主な目的はなどによる型システムの拡張的補正なしの関数オーバーロードの実現である。これはでのプログラムの形式的検証に必須になる。また、モナドの実践も容易にする。 その他の言語では、アドホック多相をサブタイプ多相に置き換えて、インターフェースとジェネリクスを融合したような機能にされていることが多い。それはレコードや構造体やオブジェクトに実装されて、その振る舞いをカテゴライズする。 (ja)
  • 在计算机科学中,类型类(type class),是支持特设多态的类型系统构造。这是通过向参数多态类型的类型变量增加约束完成的。这种约束典型的涉及到一个类型类T和一个a,并意味着a所能实例化的类型,其成员必须支持关联于T的重载运算。 类型类首先在Haskell中实现,当时Philip Wadler和Stephen Blott提出它,作为对Standard ML的eqtype的扩展,并且最初构想为以本原方式实现重载算术及等式算符的一种途径。对比于Standard ML的“eqtypes”,在Haskell中通过使用类型类重载等式算符,不要求编译器前端或底层类型系统的广泛修改。 自从它们创立之后,已经发现了类型类的很多其他应用。 (zh)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 3647181 (xsd:integer)
dbo:wikiPageLength
  • 21401 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1124045388 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • Type class, (en català: classe de tipus) en ciència de la computació, és un sistema de tipus que suporta polimorfisme ad hoc. Type class va aparèixer per primer cop al llenguatge de programació Haskell. La seva definició parteix l'univers dels tipus en classes, segons si implementen o no la signatura. (ca)
  • Typklassen sind ein Konstrukt der funktionalen Programmierung zur Implementierung von Ad-hoc-Polymorphie. Typklassen wurden für die Sprache Haskell entwickelt. Sie ähneln vom Prinzip her dem Konzept der Schnittstellen, haben aber nichts mit den Klassen der objektorientierten Programmierung zu tun. (de)
  • (計算機科学の)型クラス(かたクラス、Type class)は、をサポートする型システムの機能である。のにを付加して、関数オーバーロードと演算子オーバーロードを実現するのが元々の目的になる。その型変数に当てはめられたデータ型は、それへの制約でカテゴライズされることになる。 典型的な型クラスは、型クラスTと型変数aとそのaを引数/返り値にしたの構成で宣言される。aに型Xを当てはめたインスタンス化宣言でXはTで制約されて、その型Xを引数/返り値にする関数と演算子もインスタンス化される。総称関数も型Xでインスタンス化される。 型クラスは、Standard MLのeqtypesで提唱された後に、Haskellで初めて導入されている。その主な目的はなどによる型システムの拡張的補正なしの関数オーバーロードの実現である。これはでのプログラムの形式的検証に必須になる。また、モナドの実践も容易にする。 その他の言語では、アドホック多相をサブタイプ多相に置き換えて、インターフェースとジェネリクスを融合したような機能にされていることが多い。それはレコードや構造体やオブジェクトに実装されて、その振る舞いをカテゴライズする。 (ja)
  • 在计算机科学中,类型类(type class),是支持特设多态的类型系统构造。这是通过向参数多态类型的类型变量增加约束完成的。这种约束典型的涉及到一个类型类T和一个a,并意味着a所能实例化的类型,其成员必须支持关联于T的重载运算。 类型类首先在Haskell中实现,当时Philip Wadler和Stephen Blott提出它,作为对Standard ML的eqtype的扩展,并且最初构想为以本原方式实现重载算术及等式算符的一种途径。对比于Standard ML的“eqtypes”,在Haskell中通过使用类型类重载等式算符,不要求编译器前端或底层类型系统的广泛修改。 自从它们创立之后,已经发现了类型类的很多其他应用。 (zh)
  • In computer science, a type class is a type system construct that supports ad hoc polymorphism. This is achieved by adding constraints to type variables in parametrically polymorphic types. Such a constraint typically involves a type class T and a type variable a, and means that a can only be instantiated to a type whose members support the overloaded operations associated with T. (en)
rdfs:label
  • Type class (ca)
  • Typklasse (Informatik) (de)
  • 型クラス (ja)
  • Type class (en)
  • Класс типов (ru)
  • 类型类 (zh)
owl:differentFrom
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is rdfs:seeAlso of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License