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 (3)

Label Occurrences
Böhm–Berarducci encoding 1
Church encoding 1
Curry encoding canonical 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 Curry encoding self-linksurface differs
surface form: Böhm–Berarducci 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 (3)

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

lambda calculus hasEncoding Curry encoding
Alonzo Church notableWork Curry encoding
this entity surface form: Church encoding
Curry encoding relatedTo Curry encoding self-linksurface differs
this entity surface form: Böhm–Berarducci encoding