Contents :
Non-GUI DESL User Interface
Basic Flow of DESL Input
Commands
Options and Argument Lists
Sample Session
Types of Options
Rules for General Input
The Special "thru" Conjunction
The Special "rep" Repetition Item
Global Conditions
File-Specific Conditions
DESL is an integrated command-driven system which responds to
user-supplied command words, options, and applicable option arguments.
Currently, the user interface is the command line (MS-DOS) interface.
In the future a GUI-based input will be
available to essentially be an optional front end for the DESL
command line interface. The command line interface will remain
available for use.
Please see the DESL Modes of Execution
discussion for information related to the general invocation and use
of DESL.
In order to accomplish a particular task, DESL needs to be
told what to do; ie, commanded to perform a certain function.
Additionally, in order to indicate to a DESL function exactly
how
to do its job, most DESL functions also require input in the form
of command modifiers, expressed as options and
option argument lists.
Taken altogether, this complete set of input directs DESL
to perform a specific operation. A series of one or more
DESL commands and associated option and option argument lists, from
DESL initialization to DESL stop, constitutes a session.
A schematic diagram of the basic flow of the DESL
command line user interface is given below. The yellow areas
are clickable.
When DESL is begun, the user is at the command
prompt level; i.e., the DESL>
prompt is displayed.
At this point in a DESL session, a valid DESL
command name or abbreviation
should be entered.
DESL commands are names which invoke particular
functional units of the overall DESL system. A complete list
of all of the available DESL commands and their descriptions
and uses is given at the DESL Commands
page.
A DESL command can require
If the command requires no options (and arguments) or
requires arguments to be specified on the command line,
and these arguments are correct and sufficient, the appropriate
function immediately begins to execute.
After execution, the user is returned to the command level.
If the command does require additional options (and option
arguments) following a carriage return after the command's name
or abbreviation on a new line the system prompts the
user for these by displaying a unique prompt of the form
cmmd>,
where cmmd is the name of the command being executed.
After determining that what was specified a valid DESL
command or macro name and
the appropriate function or macro begins to execute.
After execution, the user is returned to the command level.
(
Once a command has been entered at the command level
more input may be required. This additional input is given
in the form of options and argument lists on lines following
the line on which the command name or abbreviation was specified.
In general an option/argument list is composed of name-type
strings which have special meaning to the function in
question. These special strings are called options.
Depending on the option, there may be other name or value
specifications which are also required or allowed to give full meaning,
in the current context, to the applicable option. This group
of additional input, describing or modifying the option, is
known as the argument list.
An argument list extends from its associated option up to, but not
including, the next option.
The user must enter all options and argument lists which
are pertinent to the intended operation, terminating such
input with the special option go.
DESL will not attempt to execute the applicable
function until, as a minimum, all of the required options and
arguments have been specified.
When the option and argument list is terminated with a go
the and if the input has been judged sufficient and
syntactically correct the appropriate DESL function
begins to execute.
If DESL judges there to be one or more problems with the syntax
or if the input is not sufficient, one or more messages are issued,
the command is terminated, and the user is put back to the
command prompt level.
As the user gains familiarity with DESL and as additional
functions are installed it will become more obvious that many
of the same options are applicable to more than one
command. Also, a particular option's meaning will be similar,
if not the same, in all contexts.
A discussion of all options relative to each of the commands they
can modify is presented in the DESL
Commands documentation.
In that documentation section, at the beginning of the discussion of
each DESL command, a list of required and optional
options for that command are presented.
Each option which is is required.
Each option which is not blinking is optional.
Sample Session
A sample session is presented below. The copy command is
specified along with some required and optional options and
their arguments.
Commands and options are in green font .
and option argument lists are in red font .
All other text is system prompts/responses.
desl
...Welcome to DESL ...
Enter command, abbreviation or "help" now...
DESL > copy
copy > files
r10 r11
names
test run point
copy > neofs
2 alpw gt 0
cset
2 mach lt .5
copy > newfiles
newr10 newr11
go
<< copy : save set "save0001" created >>
--->COPY : "newr10" CREATED FROM "r10".
--->COPY : "newr11" CREATED FROM "r11".
DESL > stop
...Ending DESL Version 012599
( Log file "log12321.dsl" created.)
(
Each of a command's required or optional options is of a
particular type. Moreover, a particular option's argument list
will have the same allowable general syntax regardless of the
command with which it is used; i.e., it is of a constant type.
There are 5 types of options. The type of a option determines
the form or syntax of the argument list which must follow it.
Example : backward
name name name ...
Example : nofit run alpha beta cl cd
value value value ...
Example : values 6 7 9 11 18
value name name name thru name ...
Example : nameset 1 alpw cl cd beta af nf
name name name ...
Example :
key 10401 3.5 7 config set 1 3 5 mach f7.2
(
There are several basic rules which govern the syntax of all input,
and the input of option/argument lists in particular.
In this mode of input, lines of up to 130 characters in length are
interpreted and broken down into blank-delimited items.
If the 130-character limit is exceeded it may not be obvious
from DESL actions.
Items are defined to be names or numbers.
Numbers can be expressed
in standard or scientific notation. Only the first 6 significant
figures of numbers are retained.
This is a limitation associated with the computer's
single-precision, real number representation.
Any item determined not to be a valid number is assumed
to be a string.
Blanks themselves can also be included in name items
by enclosing such items in question marks (?).
All name items except those either explicitly or implicitly SIF
variable names are interpreted as 16 characters in length. SIF variable
names are limited to the leftmost 8 characters.
If the pertinent option
being entered can accept a string longer than 16 characters, such
a string can be entered but must be enclosed with question marks.
Otherwise, the characters in excess of 16 will be ignored.
Be careful ! See the namecase command.
Input, in general, is accepted literally as entered except as noted
below with respect to SIF variable names. Command names and option
names must be entered in lower case.
See the "use"/"save"/"see" global options. [ Need links here!! ]
...(more...Enter CR to continue OR q/a + CR to quit/abort.)
will be displayed, at which time the user should respond by
entering a carriage return (CR) or q or a followed
by a carriage return to have the output continue on
or q(uit) or a(bort), respectively.
If output for the pertinent operation has completed, then the message
...(end...Enter CR to continue)
will be displayed, at which time the user should respond accordingly
by entering a carriage return.
(
During the entry of option and argument lists, rather than explicitly
entering every single name in a list of names which could be
thought of as being sequential, it may be more efficient
just to imply a sequence of names.
The string thru has special significance with regard to this
need. A sequence of names, each ending in one or more digits
which are monotonically increasing or decreasing by
1 in magnitude with the same base name, can utilize the
special conjunction thru and thereby allow the sequence of names
to be written in a more compact form.
(
TG)
The Non-GUI DESL User Interface
Example :
DESL> status
DESL> reg set *N1 = Test61
DESL>
Example(s) :
DESL> print
print> (print options and argument lists ...)
print> (print options and argument lists ...)
print> (print options and argument lists ... go)
DESL>
TG2)
Options and Argument lists
TG3)
Types of Options
name "thru" name
name = name name = name ...
name "thru" name = name
name = name "thru" name
-or- a combination of above
Example : names alpha = alpw cl = cls1
Example : names alpha = alpw
cp1 = xcp1 thru xcp100
value "to" value "by" value
-or- a combination of the above
Example : values 6 to 19 by .5
Example : values 9 6 2 -2 to -7 by -.5
name "thru" name
name = name name = name ...
name "thru" name = name
name = name "thru" name
name = value
name "thru" name = value
value value value ...
value "to" value "by" value
-or- a combination of above
TG4)
Rules for General Input
TG5)
The special thru conjunction
| . |
(Begin modifications on 051002)
The thru option should not be used to imply a sequence of
list items where the bordering items are strings that are longer
than 16 characters. In those cases, consider
employing the ...{ list_name }... construct to extend a long-string
sequence. (See most command's "files" option discussion.)
(End modifications on 051002) |
The incrementing sequence of names,
run7 thru run11
Additionally, a sequence of names can have base strings with implicitly decrementing numeric suffixes. However, there is a special aspect of the use of such a construct which needs to be stressed.
If an implied name sequence would involve an expanded sequence of names in which the number of suffix significant digits decreased somewhere during the sequence, then the number of digits specified in the ending implied sequence name becomes important. For example, the implied sequence of names,
run11 thru run07
In the first case the expanded sequence of names would be,
run11 run10 run09 run08 run07
(
During the entry of option and argument lists, rather than explicitly
entering every single item in a list of names or values which would
be repetitive, the rep #, where # is an integer,
can be used to force a replication of the last name or value
entered.
The sequence of names,
run7 rep 3 run11
Likewise, the sequence of values,
2 3 rep 4 4 5 rep 2 6
(
For DESL functions
which require option/arguments lists, up to 10 global
conditional phrases can be included following one or more of
the specified command-specific options.
A global condition cannot precede the first option
in the argument list. The no-op option exists for all commands
which have options at all for the purpose of being able to precede
a global condition which, otherwise, would have been specified before
the first option.
A global conditional phrase has the following general
format :
name logical name/value
where,
The meanings of the individual logicals are implicit - the same as
their Fortran equivalents.
Global conditional phases serve to limit the applicability of the
function to the Data files in question by ignoring all
incoming records whose pertinent variables do not
satisfy all global conditions specified simultaneously.
The DESL
filter function
is the only function which allows additional logical operators.
Examples of sets of one, two, and three global conditional phrases are,
respectively, the following :
(
Many of the DESL functions which have files as one of their options
also allow file-specific conditions to be entered. File-specific
conditions are, in structure, exactly like global conditions except that
they follow the option cset and apply only to the
associated file.
More information is presented on this type of condition where
the
cset option is discussed for each function. An example of the use
of the cset option is :
cset 2 alpha gt 0
where, the 2 after cset implies that the condition
b>alpha gt 0 applies
to the second file in the list of files specified.
The general syntax of the this type of option is
described here.
Up to 20 file-specific conditions can be specified
per file being processed.
An example session which includes the use of
both global and file-specific conditions is shown as follows :
...Welcome to DESL Version 012598 ...
Enter command, abbreviation or "help" now...
DESL > copy
<< copy : save set "save001" created >>
--->COPY : "newr10 " CREATED FROM "r10".
DESL > stop
Ending DESL Version 012598
In the above example, the global condition alpw gt 0
serves to limit
the applicability of the entire copy command for ALL
files to records which satisfy the condition alpw > 0.
Additionally, because a file-specific condition was specified for
file r11 (the second file),
the applicability of the copy command will be further restricted,
for the second file ("r11") only, to
records which also satisfy the mach < .5 condition.
TG6)
The special rep repetition item
TG7)
Global Conditions
TG8)
File-specific conditions
copy > files r10 r11 names test run point
copy > neofs 2 alpw gt 0 cset 2 mach lt .5
copy > newfiles newr10 newr11 go
--->COPY : "newr11 " CREATED FROM "r11".
( Log file "log24508.dsl" created.)
|
30 Research Drive Hampton, VA 23666 Voice: (757) 865-1400 Toll Free: (800) 288-3998 FAX: (757) 865-8177 |