[XPS-devel] XPS 0.1.9 Released
Status: Alpha
Brought to you by:
raspencer
From: Reid S. <dev...@re...> - 2003-04-22 09:00:39
|
Everyone, I have just committed, tagged, and released version 0.1.9 of XPS. Although I expected to be releasing the reflective compiler at this point, I got sidetracked with various housekeeping issues. The reflective compiler will be in the next release 0.2.0, hopefully within the next month (depending on my work schedule). Release 0.1.9 fixes a lot of housekeeping issues for XPS. Among them are: * Removal Of Dependence On ACE. Although the venerable Adaptive Communications Environment has served us well, I've removed it from XPS because it was (a) too large, (b) too heavy (contained way more features than XPS will every need), and (c) too hard to configure and customize. While ACE isn't with us any more, we thank Doug Schmidt, et.al. for their great inspiration. Many of the patterns implemented in ACE will live on in XPS. * Source now in "xps". There is a new top level source directory named "xps" that replaces the now defunct "src". This directory now contains all the software. This was necessary in order to avoid complicated autoconf work to make links in the right places. This assists use with getting the right path for including header files. * Removal of $ Log $ Lines. These lines were bloating the size of the source files and mostly redundant. If you want to look at the history, please use the "cvs log" command or browse it on the site. Since all the files were changing to the "xps" directory, I took the opportunity to clean these lines out since all the files were getting fresh versions. * New "os" module. This module provides an operating system abstraction layer that provides simple abstractions implemented by most operating systems without the need to #include ANY system header files. This greatly speeds compilation and provides a very concrete boundary between XPS and the operating system. Support for files, memory mapping, asynchronous file I/O, signal handling, dynamic libraries, threading, and synchronization is currently implemented. Coming later will be process management, asynchronous messaging, asynchronous socket I/O, timers, and shared memory. Much of this will be used to implement the XVM. * New "base" module. If you ever looked at the old "util" module, you'll probably find "base" familiar. Most of the classes have migrated there. That's needed because of library ordering and dependency. Think of "base" as operating system independent stuff (dependent only on language features). Parts of the old "util" module were dependent on the "os" module so we moved the parts that weren't to "base" and left the rest in "util". This is one of the consequences of removing ACE. * Missing modules. The "adt", "meta", "task", "xvmapi", and "xplec" modules have been temporarily removed. There is significant work to do in these modules and rather than commit them half-baked, I chose not to commit them at all for this release. They'll reappear in 0.2.0. Its better that you don't read broken code anyway. As with the 0.1.8 release, you can build the XPL compiler (xplc) and use it for checking your XPL program syntax. The XPS Daemon (xpsd), XPS Shell (xpsh), and XPS Virtual Machine (xvm) all build correctly but don't do anything other than print version information. If you're going to build this, please read the file "INSTALL" before you proceed. It will help you get the software you need in order to successfully build XPS. As always, please let me know if you have questions or problems. Best Regards, -- Reid Spencer <dev...@re...> Open Source Developer |