Philosophy Of Structured SuperBasic

Authors

Publication

Pub Details

Date

Pages

See all articles from QL Hacker's Journal 22

Philosophy is defined as a system of principles for guidance in practical affairs. The Philosophy of Structured SuperBasic (SSB) is the principles behind the creation of SSB. This philosophy guides the development of SSB. Knowing the philosophy behind the design and implementation of SSB helps to understand the what’s and why’s of SSB.

SSB Must “compile” itself.

This principle comes directly from Small-C. When Small-C was written, one of it’s principles was that Small-C was to be written in Small-C. When I first wrote SSB, I initially wrote the source code in SSB. I then hand translated it to SuperBasic to produce the first working program. From then on, SSB has always compiled newer versions of itself.

Implement What is Not Implemented.

SSB was always designed to support features not built into SuperBasic, but not support those that were supported. A good example of this is the use of the #DEFINE directive. In C #DEFINE VAR is used to set conditional “compilation” when ever the #IFDEF VAR is encountered. #DEFINE can also be used to define constants ( #DEFINE YES 1 ). When I implemented #DEFINE I supported only the conditional “compilation” aspect of #DEFINE but not its support in defining constants, since the defining of constants can be done easily in SuperBasic ( LET YES = 1 ).

Structured SuperBasic Must Support The Lowest QL.

I have never liked writing distributable software that relied on having any add-on’s to the QL. This includes using ToolKit II, QLiberator, or Minerva extensions. Version 2.6 will be the first version to support TKII, but it also has the conditional “compilation” option of supporting the bare bones QL. Version 3.0 which will support the Pointer Environment will also support the Non-Pointer Environment QLs.

Products

 

Downloadable Media

 

Image Gallery

Scroll to Top