After a two year delay while compiler infrastructure and XML validation were being acquired, the XPS project has finally released its benchmark 0.2.0 release. This version of XPS provides an XPL compiler that can simply parse, validate, and regurgitate XPL programs. The xpl-core langauge is finally defined in this version and there is now an LLVM "back end" that can convert LLVM intermediate representation into XPL source code. A comprehensive test suite ensures all this software works correctly. For full details on the release, please visit the release web page at http://x-p-s.org/releases/0.2/docs/ReleaseNotes.shtml
... it's not! After a 15 month journey assisting with the development of the Low Level Virtual Machine (LLVM), XPS is back on track. We have a new web site (hosted on an XSI server), an IRC channel (irc://irc.oftc.net/xps) and our source code is now managed with Subversion. Check the web site for the details.
After several months of reorganizing the foundation of the project, the XPS project has released the 0.1.9 build of the software. This build removes the dependence of XPS on ACE and provides its own operating system abstraction layer. This simplifies building and using XPS significantly. While ACE is a venerable toolkit, it provided too many features and wasn't configurable enough for use in XPS. However, Doug Schmidt's patterns implemented in ACE will live on in XPS. This release should be the final architectural change before the 0.2.0 release that provides a fully reflective compiler. Other changes of note: initial API documentation was created, the source was reorganized into the "xps" directory instead of the "src" directory, several "under development" modules were removed but will be added again when they are more complete.
The internal API documentation for XPS has been generated and posted to the project's home page. The documentation was generated from the source code by doxygen. You might be able to glean some understanding of the system by reading this, but caveat emptor! This is a *very* early release of the documentation and there are many deficiencies and errors. These will be corrected and reposted as the project matures. How many projects at release level 0.1.9 do you know that actually *had* documentation?
The XPS web site has recently been revised and reorganized. The site now uses a rudimentary PHP theme and contains the following sections:
Project: general information about the project.
Team: information about team members.
Vision: a high-level overview of what XPS is all about.
Architecture: XPS architecture plans (under construction).
Components: descriptions of major XPS components (under construction).
Documents: current documentation associated with XPS.... read more
How do you build the next generation open source software development platform from scratch with little or no help? How do you attract volunteer developers to a project that will take years to come to fruition? The quick answer: You don't!
After investing plenty of my own money, looking for bold investors with the same vision, and attempting to get XPS off the ground at the same time, I have come to the conclusion that I will need to pay developers for their contributions to the project. And, why not? Its a worthy cause and people can't be expected to go uncompensated for their valuable time. ... read more
With the coming close of 2002, it was time to reflect on the development of XPS and do some writing. It occurred to me that the home page doesn't succinctly describe XPS nor is there any historical context provided. As a result, there is now a new document, "XPS In A Nutshell" that provides a view of the vision for the system, some historical context, and a quick trip through its main components. If you're new to XPS, you should read this first.
This release includes tested and working versions of much of the infrastructure needed for the 0.2.0 release. Many improvements to the memory system have been made especially typesafe "pointers" in memory regions. The ADT module was overhauled and provides Array and HashTable templates now. The META module was revised to use the new HashTable and Array implementations as well as the new VectorPointer classes. It was also augmented to provide XPL output from a stored metaschema (partial implementation). This is the first release to pass the"make distcheck" target and should be simpler to build. This is a large step closer to getting to a reflective compiler. That is, one that can reproduce the original input from its symbol table. That is the goal for the 0.2.0 release. The next release, 0.1.9, will include a full meta schema for XPL which will be used as the compiler's symbol table. Once that is done, the metaschema will be attached to the xplc compiler so that the metaschema can be produced directly from XPL and hence we arrive at release 0.2.0. The compiler will then be able to correctly report on syntactic, grammatical, and semantic errors. This approach ensures that we've captured all the salient information about a program before moving forward with code generation which is the subject of the 0.3.0 release.
A new release of XPS has been completed. This release supercedes release 0.1.5 by fixing various compilation problems that occurred in non-debug configurations. For full details on the eXtensible Programming System, please visit the Source Forge project named extprosys.
The first release of the eXtensible Programming System is now available. This version provides an initial version of the XPL Compiler that performs schema validation on XPL programs. The main focus of this release is to provide a sane build environment, various utilities, and a skeletal framework for the various XPS programs (xplc, xvm, xvmsh).
The next release 0.2.0 will provide a working version of xplc and better documentation.
This release of the XPL programming language definition contains numerous minor corrections and a complete example of an XPL package with comments.
I have secured the domains x10sible.org and x10sible.net for our eventual use. Currently x10sible.org and x10sible.net are forwarded to http://extprosys.sourceforge.net/. This will suffice for the short term. Once we get a few more people on board, we'll look at creating a separate site for x10sible programming.
The first release of the core XPL schema was released today. Schemas for both the abstract and english language syntax were included in the release. These releases are preliminary and intended for gathering feedback. Feel free to comment.