Form Map Comments

Added command window:






Auto Clear the Output Pane Before Executing:






Auto clear the output pane before executing:






Choose Font for pane below:






Choose Output Options:






Clear All Input Panes:






Clear Associated Edit Pane:






Clear Edit Box:






Clear Edit Window Below:






Clear Output Pane Below:






Command to be executed:






Create A GLEE Command Window:






Display Namespace in output pane:The Namespace contains all the (global) symbols created in running Glee code. Pressing this button displays all those symbols and their contents.






Display Operators in Output Pane: Glee has a large number of operators. Each of them may be niladic (take no arguments), monadic (take one argument) or dyadic (take two argumens). Pressing this button lists all the operators that this release of Glee knows about. Only documented operators are thoroughly debugged.






Execute command in window below:






General: This form is the form I use for testing Glee as I write it. For now it will also serve as the Glee demonstration form as Glee moves along in development.
Moving the cursor over controls in this form image gives a hint to its purpose. Clicking on the control displays text in this pane describing the control.






GLEE code edit box for one line commands:






GLEE Output Pane:






Load GLEE Script named in Combo Box to right: The contents of the the file named in the Glee object file name combo box are loaded into the Source Code Pane.






Multiline GLEE Script Pane:






Namespace Clear: All the symbols (variables) created during execution by Glee are cleared by pressing this button. Afterwards, Glee will have no knowledge of those symbols and will treat them as NV (no value).






Print contents of pane below:






Print output pane below:






Run GLEE code in input pane to right:






Run GLEE Script In Edit Pane Below:






Save Script in Edit Window Below to File Named In Combo Box to right: Save the contents of the Multiline Glee Script Pane in the file named in the Source Code File Name combo box.






Select GLEE Object file: Specifies the name of the source file in C:\GLEE\GLEEScripts. This is the sub-directory that the "Ld" and "Sv" buttons are currently "hardwired" to (remember, this is just a test pad). The contents of Source Code Pane are loaded-from ("Ld") or saved-to ("Sv") a file with this name and the extension '.gof' (e.g C:\GLEE\GLEEScripts\Test Script.gof) .

Futures: The plan is for Glee to save all its source code in a single file. A typical application has 4 such files. Typical names are SYSTEM, PROGRAMS, DATA, and ANCILLARY. This will all be discussed later when we start doing real work. When this facility has been implemented, there will be a control added for the directory of these files. Then the list box portion of this control will list the files and optionally their contents. You're gonna love it!






Set font for output pane below:






Stop Executing: Stops execution of a running program. It is possible to write endless loops in Glee. However, it is not possible to "hang" the computer with Glee code. A runaway program can always be stopped by pressing this button.
Futures: Currently, pressing this button stops the program and "terminates" execution. What it should do is stop and "suspend" execution. After stopping, you should be able to grope around looking at object values. You should then be able to back up in the execution stack or continue from the point of suspension. These features are not hard to implement and should be available soon. They are crucial to "Software Sculpture". Note: At this time there are some C++ loops in operators that can't be interrupted. Thus, if you use an operator that takes a long time to complete, right now it can't be interrupted. To resolve this issue I need to put hooks into all such loops ... which I can easily do. However, what I want to do is put an interrupt target into the loops so no resources are consumed testing for interrupts. Currently I don't know how to do that.

Special Note: Right now, you "can't" stop Glee within its implicit loops. For example, if you have two vectors each containing 10 million float elements and you're performing some operation on them (like multiplication) you could have a problem unless you have a large amount of memory. With small memories, Windows will thrash (its virtual memory mechanism swaps to disk.) I have made no provision to break into these loops because in normal Glee programs the problem is not likely to occur ... vectors will be much shorter. But it could happen by accident (or you could make it happen right now with a Glee command like (1e7`) *1.1.) My 200 MHz will work fine with 1e6 doing 1.2 million multiplies in a second. However, with 1e7 it thrashes rather than taking 10 times longer (it actually does finish in about 20 minutes doing 8,000 operations per second and thrashing).

Note: If you try this, be prepared to issue the three finger salute (ctrl-alt-del) and terminate the Glee interpreter. I need to provide for breaking into these hard loops, but right now more important fish need frying. I wish Windows had an interrupt facility so I could supply this break protection without overhead... then the solution would be trivial.