Skip to content
EntityQ3557516· pop 5· linked from 237 articles

Обобщённый алгебраический тип данных

Sign in to save

Concept in functional programming

Article · Русский

Обобщённый алгебраический тип да́нных (англ. generalized algebraic data type, GADT) — один из видов алгебраических типов данных, который характеризуется тем, что его конструкторы могут возвращать значения не своего типа, связанного с ним. Сконструированы под влиянием работ об индуктивных семействах в среде исследователей зависимых типов. Такие типы реализованы в нескольких языках программирования, в частности в языках OCaml (начиная с версии 4), Idris, Agda и Haskell, причём в последнем оно не входит в стандарт языка, а реализовано только в одном из расширений компилятора GHC. Язык Haskell имитирует (англ. inductive family), представляя их типами, индексированными другими типами. Применяются в обобщённом программировании, моделировании (англ. higher-order abstract syntax) языков программирования и моделировании объектов, сохранении инвариантов структур данных, выражении ограничений во встроенных предметно-ориентированных языках.

Abstract from DBpedia / Wikipedia · CC BY-SA

Available in 5 languages

via Wikidata sitelinks · CC0