Тип продукта - Product type
Эта статья включает Список ссылок, связанное чтение или внешняя ссылка, но его источники остаются неясными, потому что в нем отсутствует встроенные цитаты.Октябрь 2020) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
В языки программирования и теория типов, а товар из типы - другой, составной тип структуры. "Операнды" продукта типы, а структура типа продукта определяется фиксированным порядком операндов в продукте. Экземпляр типа продукта сохраняет фиксированный порядок, но в противном случае может содержать все возможные экземпляры его примитивные типы данных. Выражением экземпляра типа продукта будет кортеж, и называется "кортежным типом" выражения. Продукт типов - это прямой продукт двух и более типов.
Если имеется только два типа компонентов, это можно назвать «парным». Например, если два типа компонентов А и B представляют собой набор всех возможных значений этого типа, записанный тип продукта А × B содержит элементы, которые являются парами (a, b), где "a" и "b" являются экземплярами А и B соответственно. Тип пары - это частный случай тип зависимой пары, где тип B может зависеть от экземпляра, выбранного из А.
На многих языках типы продуктов имеют форму записывать тип, для которого к компонентам кортежа можно получить доступ метка. На языках, в которых есть алгебраические типы данных, как и в большинстве функциональное программирование В языках алгебраические типы данных с одним конструктором изоморфны типу продукта.
в Переписка Карри – Ховарда, типы продуктов связаны с логическое соединение (И) в логике.
Это понятие непосредственно распространяется на продукт произвольного конечного числа типов (n-арный тип продукта), и в этом случае оно характеризует выражения, которые ведут себя как кортежи выражений соответствующих типов. Вырожденная форма типа продукта - это тип единицы: это продукт без типов.
В вызов по стоимости языков программирования, тип продукта можно интерпретировать как набор пар, первым компонентом которых является ценить в первом типе, а второй компонент - значение во втором типе. Короче говоря, это декартово произведение и это соответствует товар в категории типов.
Наиболее функциональное программирование языки имеют примитивное понятие типа продукта. Например, продукт тип1, ..., типп написано тип1 *
... *
типп в ML и (
тип1,
...,
типп)
в Haskell. В обоих этих языках кортежи пишутся (
v1,
...,
vп)
а компоненты кортежа извлекаются сопоставление с образцом. Кроме того, многие языки функционального программирования предоставляют более общие алгебраические типы данных, которые расширяют как product, так и типы сумм. Типы продуктов - это двойной типов сумм.
пример
Примером типа продукта является тип вектора в векторное пространство или алгебра над полем: тип - это произведение числового типа и типа направления. Так, например, брошюра для Международная система единиц В начале раздела 1.1 говорится: «Значение количества обычно выражается как произведение числа на единицу», а также представлено произведение единицы измерения Ньютона и метра с математическим обозначением произведения: Ньютон-метр (Н · м или Н · м). Это правильно указывает на векторное пространство характер единиц СИ над абелева группа из размеры при умножении, а поле из действительные числа - единицы СИ образуют алгебра над полем.