Sol1.1 extends the syntax of Scheme LISP with concepts borrowed from set and category theory, to create a language that is beautiful, powerful, and concise. Although inspired by abstract and formal ideas from mathematics, the intent of Sol is to provide means of expressing parallel and sequential computation that is practical and useful, as well as elegant and beautiful.
Sol is inspired by the idea that there is an underlying aesthetic to coding, that the beauty of algorithms (like the beauty mathematics) is a wonderful and real thing, but that the means of expression commonly available to programmers and computational designers is pretty ugly. There has long been the notion of a trade-off between the practicality of a programming language and it's elegance. Sol is an attempt to create a langauge which is both practical and beautiful, in which it is possible both to get the job done and to express the underlying beauty of the solution. Every programming language is a medium of expression -- Sol is an attempt to create a medium as beautiful as the message.
This document describes both the Sol language and its implementation as an embedded language in R4RS Scheme, although the core implementation is slowly migrating to an all-Java implementation based on the Kawa Scheme-to-Java compiler. As this process continues, more and more of this documentation will refer to Javadoc generated class documentation. For more information on Scheme, see the MIT Scheme home page at http://www-swiss.ai.mit.edu/scheme-home.html.