Curry encoding

E143341

Curry encoding is a technique in lambda calculus for representing data structures and algebraic types purely as higher-order functions.

All labels observed (4)

Label Occurrences
Boehm–Berarducci encoding 1
Böhm–Berarducci encoding 1
Church encoding 1

How this entity was disambiguated

Statements (42)

Predicate Object
instanceOf concept in lambda calculus ⓘ
encoding scheme ⓘ
representation of data structures ⓘ
aimsAt eliminating primitive data constructors ⓘ
appliedIn design of typed lambda calculi ⓘ
implementation of functional languages ⓘ
semantics of programming languages ⓘ
theoretical computer science ⓘ
basedOn function application ⓘ
lambda abstraction ⓘ
category data encoding in lambda calculus ⓘ
functional representation of data ⓘ
comparedWith constructor-based encodings ⓘ
contrastsWith Church encoding ⓘ
expressedIn typed lambda calculus ⓘ
untyped lambda calculus ⓘ
field functional programming ⓘ
lambda calculus ⓘ
type theory ⓘ
goal represent algebraic types purely as functions ⓘ
hasAbstractionLevel higher-order ⓘ
hasPerspective elimination-based view of data types ⓘ
influencedBy Curry–Howard correspondence ⓘ
combinatory logic ⓘ
namedAfter Haskell Curry ⓘ
property constructors are derived from eliminators ⓘ
eliminators are primitive ⓘ
supports pattern matching via higher-order functions ⓘ
relatedTo Böhm–Berarducci encoding ⓘ
linked to: Curry encoding

Church encoding ⓘ
Scott encoding ⓘ
algebraic data type encodings ⓘ
represents algebraic data types ⓘ
constructors as functions ⓘ
data structures ⓘ
pattern matching via function application ⓘ
supports representation of product types ⓘ
representation of recursive data types ⓘ
representation of sum types ⓘ
usedFor encoding algebraic data types in pure lambda calculus ⓘ
formal reasoning about data types ⓘ
uses higher-order functions ⓘ

How these facts were elicited

Referenced by (4)

Full triples — surface form annotated when it differs from this entity's canonical label.

lambda calculus → hasEncoding → Curry encoding ⓘ
Alonzo Church → notableWork → Church encoding ⓘ
linked to: Curry encoding
Curry encoding → relatedTo → Böhm–Berarducci encoding ⓘ
linked to: Curry encoding
Church encoding → relatedTo → Boehm–Berarducci encoding ⓘ
linked to: Curry encoding