As we move toward the completion of REBOL 3.0 and it's related
components, it is time to say a bit more about our progress and plans.
For the last few months, the main focus has been on the graphical user
interface (GUI), with the objective of creating a GUI system that was
powerful, flexible, but remained lean and lightweight. This was no small
requirement and has consumed a great deal of my time. In fact, more than
any other aspect of the GUI project, reduction of the number of concepts
and simplification of each separate concept has taken more time than I
As a result of that mind voyage, I have concluded a general rule that:
Simplicity is a delicate thing;
it must be recognized as an objective worth achieving and maintaining, and
simplicity can easily be destroyed, so
therefore, it must be guarded with great care.
Said another way: simplicity isn't free. In fact, it's more work at the start.
Anyway, regarding the project, good progress was made so that by the end
of September, we started a new private group for testing, discussing,
improving the GUI. (I did not want a lot of voices at this point, so I
intentionally kept the group very small. It will be expanding soon.)
During the month of October, the project objectives were:
To review the basic GUI design/concepts and provide feedback.
To contribute improvements, especially focusing on providing a modern
graphical appearance and a standard set of styles (widgets).
To track and fix bugs as necessary.
To increase developer awareness of the project in advance of the next
Also included for October was to build a documentation strategy:
To produce a new organization of documents based on the new design,
for the purposes of educating new developers.
To provide clear and easy-to-understand examples and how-to articles.
To begin explaining the finer points, to enable developers to build
more complex types of styles, but within the bounds of the design.
And finally, to write a few example reblets, from the GUI point of view
and in order to help evaluate the design and to serve as examples:
The GUI test control panel (with numerous subpanels, as needed)
A simple submission form, such as that used for contact information.
A super simple REBOL source file browser.
A mini draw program, along the same lines as Sievertsen did in R2,
including a few shapes, and controls, as well as undo.
A first pass at a color selector/requestor.
An analog clock as a resizable, setable, getable style.
More important than the specific features of any of these reblets is
that they provide the opportunity to explore the methodology of the GUI
and evaluate its current level of capability. In other words, you cannot
complete a good GUI system without using it to do real things.
So, we achieved those objectives for October.
For November, our main goals are:
To expand the GUI group to include more developers.
Discover and resolve various bugs or problems with the GUI or the SVG draw system that it's built on.
Wrap up the first skin that has an acceptable appearance for R3, its developers and their initial reblets.
Finish off the required base GUI styles (widgets), including more of
the compound styles (e.g. combo box), standard requestors and the popup
To determine documentation priorities, make a list of what's missing,
and get those written and published in DocBase.
To add several more example reblets, with increasing features and capabilities.
To get a real reblet running, such as DevBase itself, which will allow us...
To get the source distribution back online and available to interested
And, as you may guess, these last two items that are important because
not only do they help move R3 toward completion, but they also help us
build and improve the tools we need to do so.