Name: Anonymous 2015-03-23 20:52
bondi (pronounced "bond-eye") is a programming language centered on pattern-matching . It supports functional, imperative, query-based and object-oriented programming styles using a single small evaluator.
https://bondi.it.uts.edu.au/
λ-calculus explores internal structure in an ad hoc manner.
But all data structures are either atoms or compounds.
The pattern
Pattern calculus is strictly more expressive than λ-calculus, provides natural support for the main programming styles, and suggests some new ones (five sorts of polymorphism).
Path polymorphism supports generic queries, e.g. select.
Pattern polymorphism supports dynamic patterns (services).
bondi implements pattern calculus
https://bondi.it.uts.edu.au/
λ-calculus explores internal structure in an ad hoc manner.
But all data structures are either atoms or compounds.
The pattern
xy
matches any compound in pattern calculus.Pattern calculus is strictly more expressive than λ-calculus, provides natural support for the main programming styles, and suggests some new ones (five sorts of polymorphism).
Path polymorphism supports generic queries, e.g. select.
Pattern polymorphism supports dynamic patterns (services).
bondi implements pattern calculus