Extensible programming: Difference between revisions

Content deleted Content added
 
(2 intermediate revisions by 2 users not shown)
Line 1:
{{short description|Style of computer programming}}
In [[computer science]], '''extensible programming''' is a style of computer programming that focuses on mechanisms to extend the [[programming language]], [[compiler]], and [[runtime system]] (environment). Extensible programming languages, supporting this style of programming, were an active area of work in the 1960s, but the movement was marginalized in the 1970s.<ref name="Standish1975"/> Extensible programming has become a topic of renewed interest in the 21st century.<ref name="Wilson2005">Gregory V. Wilson, "[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.453.3676&rep=rep1&type=pdf Extensible Programming for the 21st Century]", ''ACM Queue'' 2 no. 9 (Dec/Jan 2004–2005).</ref>
 
Line 70 ⟶ 71:
* [[XML]]
* [[Forth (programming language)|Forth]]
* [[Factor (programming language)|Factor]]
* [[Lisp (programming language)|Lisp]]
** [[Racket (programming language)|Racket]]
Line 97 ⟶ 99:
=== Tools ===
# [http://www.meta-language.net/ MetaL] – [https://web.archive.org/web/20050220100913/http://pyre.third-bit.com/pipermail/extprog/2005-January/000019.html an extensible programming compiler engine implementation]
# [httphttps://sourceforge.net/projects/extprosys/ XPS] – eXtensible Programming System (in development)
# [http://www.jetbrains.com/mps/ MPS] – JetBrains Metaprogramming system
 
=== Languages with extensible syntax ===
# [httphttps://openzz.sourceforge.net/ OpenZz]
# [http://cs.nyu.edu/rgrimm/xtc/ xtc – eXTensible C]
# [https://github.com/pannous/english-script English-script]
Line 107 ⟶ 109:
# [https://web.archive.org/web/20050817205802/http://boo.codehaus.org/Syntactic+Macros Boo Syntactic Macros]
# [https://web.archive.org/web/20061022071450/http://suif.stanford.edu/ Stanford University Intermediate Format compiler]
# [httphttps://seed7.sourceforge.net/ Seed7 – The extensible programming language]
# [https://github.com/chrisseaton/katahdin Katahdin] – a language with syntax and semantics that are mutable at runtime
# [http://www.pi-programming.org/What.html π] – a language with extensible syntax, implemented using an [[Earley parser]]