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

In the area of mathematical logic and computer science known as type theory, a kind is the type of a type constructor or, less commonly, the type of a higher-order type operator. A kind system is essentially a simply typed lambda calculus "one level up", endowed with a primitive type, denoted and called "type", which is the kind of any data type which does not need any type parameters.

Property Value
dbo:abstract
  • Druh je v teorii typů "typ typu". Druh konkrétních typů (např. čísla nebo řetězce) je , druh generických typů (např. seznamu List⟨_⟩) je a druh monád je . V případě monád jde o druh vyššího řádu. Konkrétní typy (druhu ) tvoří kategorii, ve které morfismy jsou funkce. Typem druhu je v C++ například template<typename T> class A; Typem druhu je například template<typename T, typename U> class A; Typem vyššího druhu je kupříkladu: template<template<typename> class T> class A; Ve většině běžných imperativních jazyků (Java, Swift, Go…) není možné typy vyšších druhů používat kvůli chybějící podpoře v překladači a runtimu.V dynamicky typovaných jazycích (Python, Objective-C apod.) je implementace bezproblémová, ovšem bez typové kontroly během překladu. (cs)
  • In the area of mathematical logic and computer science known as type theory, a kind is the type of a type constructor or, less commonly, the type of a higher-order type operator. A kind system is essentially a simply typed lambda calculus "one level up", endowed with a primitive type, denoted and called "type", which is the kind of any data type which does not need any type parameters. A kind is sometimes confusingly described as the "type of a (data) type", but it is actually more of an arity specifier. Syntactically, it is natural to consider polymorphic types to be type constructors, thus non-polymorphic types to be nullary type constructors. But all nullary constructors, thus all monomorphic types, have the same, simplest kind; namely . Since higher-order type operators are uncommon in programming languages, in most programming practice, kinds are used to distinguish between data types and the types of constructors which are used to implement parametric polymorphism. Kinds appear, either explicitly or implicitly, in languages whose type systems account for parametric polymorphism in a programatically accessible way, such as C++, Haskell and Scala. (en)
  • 종(kind)는 수리논리학 및 컴퓨터 과학의 영역에서 형 이론(타입 이론)으로 구분되어 있다. 종(kind)이란 같은 타입 혹은, 약간 더 일반적이지는 못하지만, 고계(고차)연산자와 같은 타입이다. 원시 타입은 *로 표기하고 "타입"이라고 부른다. 이는 어떤 도 필요로 하지 않는 모든 데이터 타입의 종류이다. 종 시스템은 원시 타입에 부여된 에서 "one level up"이다. 종은 때때로 혼동되도록 "(데이터) 타입의 타입"으로 설명되곤 하지만, 실제로는 인자(arity) 지정자라고 보는게 더 맞다. 구문 상으로는, 다형성 타입을 타입 생성자라고 생각하는 것이 더 자연스러우며, 따라서 다형성이 없는 타입의 경우 인자가 없는(nullary) 타입 생성자라고 생각하는 게 맞다. 그러나 모든 인자가 없는 생성자, 즉 모든 단일형 타입은 동일하고, 가장 간단한 종, 이름하여 *을 가진다. 프로그래밍 언어에서 고계(higher-order) 타입 연산자가 일반적이지는 않으므로, 대부분의 프로그래밍 실전에서, 종(kind)은 데이터 타입과 을 구현하는데 사용되는 생성자 타입을 구분하는데 사용된다. 종(kind)은 하스켈과 스칼라와 같이, 타입 시스템이 프로그래밍의 접근 방식으로 파라메터 다형성을 설명하는 언어에서, 명시적 혹은 암시적으로 나타난다. (ko)
  • 数理論理学や計算機科学の型理論として知られる分野において、カインドはの型、もしくはより一般的ではないがの型である。カインドシステムは本質的には、基本型というで表記され「型」と呼ばれる型を持っている「一階上の」単純型付きラムダ計算で、基本型とはを必要としない任意のデータ型のカインドである。 カインドは「(データ)型の型」という紛らわしい説明がされることもあるが、実際にはアリティ指定子である。文法的には、多相型を型コンストラクタと見なすのが自然で、従って多相でない型はの型コンストラクタと見なせる。しかし全ての零項の型コンストラクタ、従って全ての単相的な型は、同一の最も単純なカインドすなわちを持つ。 高階型演算子はプログラミング言語にはほとんどないので、ほとんどのプログラミング言語では実際には、カインドはデータ型とを実装するのに使われるコンストラクタの型を区別するために使われる。HaskellやScalaのような、プログラム的にアクセス可能な方法でパラメータ多相の情報を提供する型システムを持つ言語において、明示的もしくは暗黙的にカインドは現れる。 (ja)
  • Род в теории типов (англ. kind) — тип конструктора типов, или более формально, тип ти́пового оператора высшего порядка. Система родо́в естественным образом представляется как родительское (вышестоящее) просто типизированное лямбда-исчисление, снабжённое примитивным типом, обозначаемым «*» (читается «тип»), формирующим род мономорфных типов данных. Более наглядно, род представляет собой тип типов, или метатип — аналогично тому как множество значений формирует тип, — множество типов формирует род. При этом вхождение типов в более общие типы (в качестве подтипов) отличается от принадлежности типов роду — деление разнообразных типов на рода происходит на более абстрактном уровне. Например, типы «натуральное», «целое» и «вещественное» являются подтипами более общего типа «число»; все четыре типа представляют непосредственные значения, и поэтому принадлежат к роду «*». Другие рода формируются из разнообразных операций над типами — подобно тому как в арифметике различают числа и операции над числами. Синтаксически естественно было бы считать все полиморфные типы конструкторами типов; и, соответственно, все мономорфные — нульарными конструкторами типов. Однако, все нульарные конструкторы, то есть все мономорфные типы, в действительности принадлежат к единому роду, а именно к «*». Из-за того, что ти́повые операторы высших порядков нетипичны для большинства языков программирования, в практике программирования рода́ используются для того, чтобы отличать типы данных от типов конструкторов, используемых для реализации параметрического полиморфизма. Рода́ явным или неявным образом появляются в языках с полными системами типов, таких как Haskell и Scala. (ru)
dbo:wikiPageID
  • 20627460 (xsd:integer)
dbo:wikiPageLength
  • 8534 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1118913024 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
rdfs:comment
  • 数理論理学や計算機科学の型理論として知られる分野において、カインドはの型、もしくはより一般的ではないがの型である。カインドシステムは本質的には、基本型というで表記され「型」と呼ばれる型を持っている「一階上の」単純型付きラムダ計算で、基本型とはを必要としない任意のデータ型のカインドである。 カインドは「(データ)型の型」という紛らわしい説明がされることもあるが、実際にはアリティ指定子である。文法的には、多相型を型コンストラクタと見なすのが自然で、従って多相でない型はの型コンストラクタと見なせる。しかし全ての零項の型コンストラクタ、従って全ての単相的な型は、同一の最も単純なカインドすなわちを持つ。 高階型演算子はプログラミング言語にはほとんどないので、ほとんどのプログラミング言語では実際には、カインドはデータ型とを実装するのに使われるコンストラクタの型を区別するために使われる。HaskellやScalaのような、プログラム的にアクセス可能な方法でパラメータ多相の情報を提供する型システムを持つ言語において、明示的もしくは暗黙的にカインドは現れる。 (ja)
  • Druh je v teorii typů "typ typu". Druh konkrétních typů (např. čísla nebo řetězce) je , druh generických typů (např. seznamu List⟨_⟩) je a druh monád je . V případě monád jde o druh vyššího řádu. Konkrétní typy (druhu ) tvoří kategorii, ve které morfismy jsou funkce. Typem druhu je v C++ například template<typename T> class A; Typem druhu je například template<typename T, typename U> class A; Typem vyššího druhu je kupříkladu: template<template<typename> class T> class A; (cs)
  • In the area of mathematical logic and computer science known as type theory, a kind is the type of a type constructor or, less commonly, the type of a higher-order type operator. A kind system is essentially a simply typed lambda calculus "one level up", endowed with a primitive type, denoted and called "type", which is the kind of any data type which does not need any type parameters. (en)
  • 종(kind)는 수리논리학 및 컴퓨터 과학의 영역에서 형 이론(타입 이론)으로 구분되어 있다. 종(kind)이란 같은 타입 혹은, 약간 더 일반적이지는 못하지만, 고계(고차)연산자와 같은 타입이다. 원시 타입은 *로 표기하고 "타입"이라고 부른다. 이는 어떤 도 필요로 하지 않는 모든 데이터 타입의 종류이다. 종 시스템은 원시 타입에 부여된 에서 "one level up"이다. 종은 때때로 혼동되도록 "(데이터) 타입의 타입"으로 설명되곤 하지만, 실제로는 인자(arity) 지정자라고 보는게 더 맞다. 구문 상으로는, 다형성 타입을 타입 생성자라고 생각하는 것이 더 자연스러우며, 따라서 다형성이 없는 타입의 경우 인자가 없는(nullary) 타입 생성자라고 생각하는 게 맞다. 그러나 모든 인자가 없는 생성자, 즉 모든 단일형 타입은 동일하고, 가장 간단한 종, 이름하여 *을 가진다. (ko)
  • Род в теории типов (англ. kind) — тип конструктора типов, или более формально, тип ти́пового оператора высшего порядка. Система родо́в естественным образом представляется как родительское (вышестоящее) просто типизированное лямбда-исчисление, снабжённое примитивным типом, обозначаемым «*» (читается «тип»), формирующим род мономорфных типов данных. (ru)
rdfs:label
  • Druh (teorie typů) (cs)
  • Kind (type theory) (en)
  • カインド (型理論) (ja)
  • 종 (유형 이론) (ko)
  • Род (теория типов) (ru)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink 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