README.pod - Readme file for ClojurePVM.
This README sets out a brief overview of ClojurePVM, version 0.0.1.
Clojure is a dialect of Lisp which runs on the JVM.
Unlike other lisps which run on the JVM,
Armed Bear Common Lisp (ABCL),
Clojure breaks with ANSI Common Lisp in order to offer a "better lisp," but also to correct certain,
rather important defects,
of Common Lisp: Most importantly "Clojure gets data structures right." Puzzler,
"Thoughts on Programming: Racket vs.
See also NOTE accompanying this distribution.
The sheer productive power of immutable,
persistent data structures coupled with an efficient garbage collection system executing on multi-core processors with large inlined caches simply cannot be overstated.
The capability to treat data as values,
variables which are never rebound,
virtually frees the applications developer from the challenge,
dare I say,
"nightmare," of concurrency programming.
For more information on this, I encourage the interested reader to take a look at the many, excellent videos out on the web about Clojure. Specifically, I strongly encourage the reader to pay particular attention to Rich Hickey's presentations. They are truly excellent. He has put a tremendous amount of effort, thought, and hard work into getting both the design and the implementation of Clojure right.
As far as I can see, the only "real" liability of Clojure is, it lives on the JVM. It's understandable, that is, Rich Hickey's decision to target the JVM (if for no other reason than the plethora of Java libraries), but it is a liability nonetheless.
In short, this project is an effort to correct this deficiency and bring this exceptionally well-designed language to the Parrot/Perl Community.
This code is distributed under the terms of the Artistic License 2.0. For more information about this license, see the LICENSE file, accompanying this distribution.
Copyright (C) 2011-2012, Alvis Yardley.