The Perspective of the Experienced Computer User

Hopefully this will become a regular column.  Here the "user" means the common garden experienced computer user, not ever to be confused with the programmer or developer hothouse varieties and, at the other extreme, clearly different from the vaster expanses covered by novice users (i.e. those that use their computer in a purely unadventerous and mechanistic way).

This is the user who is forever trying to squeeze extra power from a given set-up - forever weighing up the labour spent trying to save labour as against that expended doing it the same old way.  When the experienced user turns to a language it is not to reinvent the wheel, or in order to create exemplars of programming skill, but to produce practical tools for the jobs in hand.  Ideally, such a language should be a form of electronic super-glue, capable of doing simple work, malleable enough to change on-the-fly and transparently understandable.

REXX is, of course, the language of choice because of its simplicity, elegance and power.  REXX takes minutes to learn; robust, forgiving and concise; the overburden of exotica is absent; the scripts are readable and amenable; and, as long as the language is not pressed too far, fast and efficient.  Real world strings and numbers are handled in a straight- forward manner, although REXX can also boot bits around when required.

REXX extends easily, for function libraries offer endless potential without distracting from the core language.  REXX's syntax has few surprises, stands a fair amount of abuse and flows naturally from one statement to the next without any ill-signed detours.

As you might imagine, this column favours classic REXX and strongly disavows the trend to obscure its real elegance and refined logic with the intractable hieroglyphs and the ugly belligerence of Object Oriented Programming.  This column favours short, reusable, scripts; simple function calls; extensive function libraries; executables with REXX ports; in short, anything that gives experienced users the power to quickly adapt, evolve and co-opt computer resources to their changing needs.

The tools are already available (REXX has been around for years), some are of course in their infancy (the subject of future columns), others need to become universal (i.e. REXX ports) and still others need only to breed more of their kind (function libraries - which will be reviewed from time to time).

The purpose of this column is to introduce these tools from the perspective of an experienced user to a community of experienced users.  This is not a how-to-column, nor is it the least concerned with the problems of programmers or developers.

The next few columns will be about MAID (Modular and Integrated Design) a tool which uses custom built Graphical User Interfaces (GUI) to make REXX scripts even shorter, more modular, reusable and robust.  It is the first substantial step away from code-bloating, the first time that GUIs become a tool for reducing, protecting, and simplifying scripts, and without any special features supply the most natural way to debug yet encountered by this author.  But more on that later.

Greg Schofield <>,
the Darwin correspondant for the RexxLA Newsletter