В програмуванні, cons () фундаментальна функція більшості діалектів LISP. cons конструює (, звідки й назва) об'єкти в пам'яті, які містять два значення чи вказівники на значення. Такі об'єкти називають комірками (), консами (), неатомарними S-виразами ("NATSes") або парами. Ліву частину пари (перший елемент) називають car, праву (другий елемент) — cdr.

Також цей трохи пов'язаний з поняттям конструктора в ООП, який створює новий об'єкт за аргументами і трохи більше пов'язаний з функцією конструктором у системах алгебричних типів даних.

Слово "cons" та вираз "зконсити" є частиною більш загального жаргону функціонального програмування. Іноді оператори які мають подібну мету, особливо в контексті обробки списків, вимовляються як "cons". (Гарним прикладом є оператор :: в ML, Elm та Scala, який додає елемент до початку списку.)

Зноски

Див. також LISP CAR та CDR Конструктор Алгебричний тип даних

Посилання SDRAW , код Common Lisp для зображення структур cons.