AST ADT chicken egg problem
- AST algebraic syntax tree
- ADT algebraic data type
Contents
[hide]ADT modeling AST
Lambda calculus, it's variants, and
in general formal systems (core of many programming languages)
are usually specified in Bakus Naur form.
This is basically a specific algebraic data type (ADT) with both sum types and product types.
– sum type for the various options a term can take
– product types for the components a term must have
AST modeling ADT
Better programming languages need algebraic datatypes.
Even in basic untyped lambda calculus there are simple embeddings for sum types and product types.
The chicken egg problem
(wiki-TODO: Main point of the topic is still missing here)
Related
External links
- https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_form
- https://mathoverflow.net/questions/151240/why-is-there-no-product-type-in-simply-typed-lambda-calculus
What links the main topic of this wiki
(atomically precise manufacturing targeted at gemstone metamaterial technology)
to the programming language part of the wiki is outlined on this page:
Relations of APM to purely functional programming