13 relations: Algebraic data type, Dichotomy, Duck typing, Go (programming language), Haskell (programming language), Haxe, Nominal type system, OCaml, Protocol (object-oriented programming), Subtyping, Type system, Types and Programming Languages, WikiWikiWeb.
Algebraic data type
In computer programming, especially functional programming and type theory, an algebraic data type is a kind of composite type, i.e., a type formed by combining other types.
New!!: Structural type system and Algebraic data type · See more »
Dichotomy
A dichotomy is a partition of a whole (or a set) into two parts (subsets).
New!!: Structural type system and Dichotomy · See more »
Duck typing
In computer programming, duck typing is an application of the duck test in type safety.
New!!: Structural type system and Duck typing · See more »
Go (programming language)
Go (often referred to as Golang) is a programming language created at Google in 2009 by Robert Griesemer, Rob Pike, and Ken Thompson.
New!!: Structural type system and Go (programming language) · See more »
Haskell (programming language)
Haskell is a standardized, general-purpose compiled purely functional programming language, with non-strict semantics and strong static typing.
New!!: Structural type system and Haskell (programming language) · See more »
Haxe
Haxe is a high-level cross-platform multi-paradigm programming language and compiler that can produce applications and source code, for many different computing platforms, from one code-base.
New!!: Structural type system and Haxe · See more »
Nominal type system
In computer science, a nominal or nominative type system (or name-based type system) is a major class of type system, in which compatibility and equivalence of data types is determined by explicit declarations and/or the name of the types.
New!!: Structural type system and Nominal type system · See more »
OCaml
OCaml, originally named Objective Caml, is the main implementation of the programming language Caml, created by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy, Ascánder Suárez and others in 1996.
New!!: Structural type system and OCaml · See more »
Protocol (object-oriented programming)
Protocol is a term used by particular object-oriented programming languages with a variety of specific meanings, which other languages may term interface or trait (or even Dynamic dispatch or Dependency injection), and often associated with languages from Apple Inc. (Protocol when used otherwise is akin to a Communication protocol, indicating the chain of interactions between the caller and the object.) Languages which use the term Protocol include.
New!!: Structural type system and Protocol (object-oriented programming) · See more »
Subtyping
In programming language theory, subtyping (also subtype polymorphism or inclusion polymorphism) is a form of type polymorphism in which a subtype is a datatype that is related to another datatype (the supertype) by some notion of substitutability, meaning that program elements, typically subroutines or functions, written to operate on elements of the supertype can also operate on elements of the subtype.
New!!: Structural type system and Subtyping · See more »
Type system
In programming languages, a type system is a set of rules that assigns a property called type to the various constructs of a computer program, such as variables, expressions, functions or modules.
New!!: Structural type system and Type system · See more »
Types and Programming Languages
Types and Programming Languages,, is a book by Benjamin C. Pierce on type systems published in 2002.
New!!: Structural type system and Types and Programming Languages · See more »
WikiWikiWeb
The WikiWikiWeb is the first-ever wiki, or user-editable website.
New!!: Structural type system and WikiWikiWeb · See more »
Redirects here:
Structural subtyping, Structural type, Structural typing.