ARS++

ARS++

ARS++ was developed in 2002 for the book "Undiluted Programming" [ [http://www.lambda-bound.de/book/engl/index.html Description of Undiluted Programming] ] to demonstrate ARS based programming in a real world context. ARS++ is used in the book to implement an A++ interpreter and an XML Database System. Even the implementation of ARS++ in C was used to demonstrate ARS based programming.

Principally the programming language Scheme would have been perfectly alright to be used for these demonstration programs if Scheme would include primitives supporting network programming, database programming plus a few others required in this context.

The definition of the programming language Scheme does not include those primitives however, leaving this issue up to the implementors of the language. The consequence is that there exist many Scheme implementations, almost none of them covering all areas essential for real application programs. This is the historical background that gave birth to the development of ARS++. [A few weeks ago the author of the referenced book discovered a Scheme implementation that would have been very well suited to serve as a language for developing the case studies for 'Undiluted Programming'. This "Scheme implementation" is called Gauche and is [http://www.shiro.dreamhost.com/scheme/gauche/ available for download in the internet] .]

ARS++ explained by its name

The name ARS++, being an acronym for ARS + Scheme + Extensions, indicates that ARS++ has a lot to do with Scheme but that it is not equivalent to Scheme.

* The first part of the name refers to the core of the language, which is nothing else but A++, i.e. "Abstraction + Reference + Synthesis". [The structure of A++ however is different from the structure of Scheme, which can be verified by comparing the definition of Scheme in R5RS with the definition of A++ [http://www.lambda-bound.de/book/lambdacalc/node41.html here] .]

* The second part in the name of ARS++ stands for the primitive functions that are imported from Scheme, giving ARS++ almost the same functionality as Scheme. Primitive functions are those, that are not and cannot be defined as lambda abstractions because they are representing a functionality that can only be provided by the underlying operating system or the hardware.

* The third part of the name refers to primitive functions that are not defined in R5RS (the official definition of the programming language Scheme) but are nevertheless important for real world programming like functions allowing to work with regular expressions, with TCP/IP networks, with embedded databases (e.g. Berkeley DB, GNU database manager) and a few that provide an interface with the operating system.

From a practical point of view a Scheme implementation that includes support for regular expressions, databases, sockets and also provides an interface to the operating system can be called an ARS++ language.

See also

* ARS based programming
* A++
* Educational programming language

References


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • ARS — ist der Name folgender Städte in Frankreich: Ars (Charente) im Département Charente Ars (Creuse) im Département Creuse Ars en Ré im Département Charente Maritime Ars Laquenexy im Département Moselle Ars les Favets im Département Puy de Dôme Ars… …   Deutsch Wikipedia

  • Ars — may refer to: * Ars (slang), an Israeli slang term for a person of bad manners, flashy jewellery, and overall rudeness * Ars Electronica, an Austrian organisation founded around a festival for art, technology and society * Ars Technica, a… …   Wikipedia

  • Ars-en-Re — Ars en Ré Ars en Ré Administration Pays France Région Poitou Charentes Département Charente Maritime …   Wikipédia en Français

  • Ars en Ré — Administration Pays France Région Poitou Charentes Département Charente Maritime …   Wikipédia en Français

  • Ars — ist der Name folgender Gemeinden und Kantone in Frankreich: Ars (Charente) im Département Charente Ars (Creuse) im Département Creuse Ars en Ré im Département Charente Maritime Ars Laquenexy im Département Moselle Ars les Favets im Département… …   Deutsch Wikipedia

  • ars — [ ar ] n. m. • 1213; lat. armus ♦ Techn. Jonction du poitrail et des membres antérieurs du cheval. Saigner un cheval aux ars. ⊗ HOM. Are, arrhes, art, hart. ● ars nom masculin (latin armus, épaule) Chez les quadrupèdes, région où les membres… …   Encyclopédie Universelle

  • Ars-en-Ré — Ars en Ré …   Deutsch Wikipedia

  • Ars-en-Ré — Saltar a navegación, búsqueda Ars en Ré Ayuntamiento …   Wikipedia Español

  • ars — (izg. ȁrs) m DEFINICIJA umjetnost, znanje, vještina SINTAGMA ars antiqua (izg. ars antíkva) glazb. pov. razdoblje u razvoju glazbe (Francuska, 12 14. st.); ars magna (izg. ars mȁgna) pov. tobožnja srednjovjekovna specifična metoda otkrivanja… …   Hrvatski jezični portal

  • ars — Ars, m. En singulier est particip. qui est fait du verbe Ardre ou ardoir, et est pur Latin de Arsus, par apocope, et signifie bruslé, comme, Le palais est tout Ars, Palatium igne absumptum est. Et en pluriel, les Ars signifie les espaules d une… …   Thresor de la langue françoyse

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”