DESL


DESL Home | Website Outline | Commands | Examples | Download | Contacts


Quick Guide to DESL

Before you go any further, please take the time to get a flavor of DESL.

(1) Do you really need DESL?
(2) Is your system set up to be able to host DESL?
(3) The DESL legal issues.
(4) Downloading DESL + Installation Part 1.
(5) Installation Part 2.
(6) Running DESL.
(7) DESL Modes of Execution
(8) DESL User Interface
(9) DESL Commands
(10) Command Options and Argument Lists
(11) DESL Update Chronology

( quick1) (1) Do you really need DESL?

If you routinely deal with data which could be thought of as existing in a two-dimensional table, or spreadsheet format, and having "columns" which contain only numeric data, then DESL could be an effective new tool set to help you do things with data files which may have been impossible or impractical to do in the past with other tools.

Many existing tools let you deal with one data set at a time, whether you are plotting or computing new variables from existing data. DESL, too, allows a single data set at a time approach if this is what is desired. However, it also allows a single type of manipulation function to be applied to many data sets serially or in parallel and allows user-directed sequences of such manipulation functions to be applied to many data sets. Such sequences of operations, when organized properly, provide the means to control a powerful process which can be brought to bear on many data sets. The term "data sets" used here is synonomous with a data file. One data file contains one data set.

DESL is a file-oriented system. Existing files are read and, typically, new files are created. A multi-staged process, then, could read/create/read/create/etc. until a final set of data is produced.

Disk space, especially temporary disk space, is cheap and modern computers are powerful hardware platforms upon which very effective work can be carried out.

( quick2) (2) Is your system set up to be able to host DESL?

PC : An Intel (or equivalent) Pentium with adequate memory/disk space running Windows 9X or NT is the intended host for DESL.

Unix : Various Unix platforms are also supported as DESL hosts.

The Compaq Visual Fortran compiler was used to produce all of the PC DESL code comprising DESL. The 32-bit PC platforms (386/486/Pentium) use a virtual memory scheme. Any application, therefore, having specific memory requirements will utilize some combination of working disk space and memory during execution. There are some combinations of levels of memory and/or available disk space below which DESL, or any other modern application, will not execute. Those levels cannot be determined apriori. But suffice it to say that most Pentium configurations have no problem running DESL. A basic minimum configuration is typically 32MB of memory and 40MB of working disk space.

Native Fortran compilers on the supported Ujnix platforms were used during the production of the DESL executables.

It is strongly suggested that the demonstration version of DESL be downloaded, installed and run, however, to see if your host system can successfully run DESL. A subscription version of DESL, having the same hardware requirements, will then be guaranteed to run successfully on your system.

Other optional software products mentioned within the DESL documentation are third party products that are available free of charge for use as facilitating applications. Ghostview, for displaying PostScript files, and Tcl/Tk for (future) GUI interfaces are those products. Each, at its referenced web location, discusses the respective hardware/software limitations.

( quick3) (3) The DESL legal issues.

There are legal issues which any user or potential user of DESL must understand and agree to before using either the demonstration or subscription version of DESL. If agreement with the limitations and statements specified is not made then DESL should NOT be downloaded or used. On the password order form there is a place to indicate whether there is agreement with the stated legal issues or not.

( quick4) (4) Downloading DESL + Installation Part 1.

If you are reading this on the ViGYAN-hosted web pages or on those pages local to your computer obtained from the ViGYAN server via a previous download of DESL you have access to :

  1. the DESL self-extracting archive file : deslsys.exe (PC) or deslsun.tar/desliris.tar/deslsolaris.tar (Unix)
  2. the executable password utility file : deslpw.exe

resident on and available for downloading from the ViGYAN server.

PC systems

The binary DESL self-extracting archive file deslsys.exe can be downloaded to your computer by clicking on the appropriate link.

What you are actually downloading is a single file which will be expanded into several other files required to produce a working DESL system.

On the PC, the downloaded "deslsys.exe" file is approximately 2.5MB in length. The required companion file deslpw.exe can also be downloaded by clicking on the appropriate link and must be downloaded each time the DESL self-extracting archive deslsys.exe is downloaded.

Your browser should recognize the "exe" extension of the "deslsys.exe" and the "deslpw.exe" files as one which should be saved as opposed to opended. In any event, the downloaded files should be saved on your PC. The location at which you save the files is not important at this time. In the long run it will be easiest to save the files to a location where DESL will ultimately live. We recommend C:\DESL as the resident directory.

The self-extracting archive file deslsys.exe you have downloaded, when expanded, will be seen to have contained :

  1. desl.exe, the DESL executable
  2. makesys.exe a utility for producing local DESL documentation web pages
  3. shddoc, a scrambled documentation file which should NOT be editied

Unix systems

The binary DESL tar file deslsun.tar, deslsolaris.tar or desliris.tar can be downloaded to your computer by clicking on the appropriate link.

What you are actually downloading is a single file which will be expanded into several other files required to produce a working DESL system.

The downloaded "deslsys.tar" file is approximately 3MB in length. The required companion file deslpw.exe can also be downloaded by clicking on the appropriate link and must be downloaded each time the DESL tar file deslsys.tar is downloaded.

In any event, the downloaded files should be saved on your system. The location at which you save the files is not important at this time. In the long run it will be easiest to save the files to a location where DESL will ultimately live. We recommend ~/desl as the resident directory.

The tar file deslsys.tar you have downloaded, when expanded, will be seen to have contained :

  1. desl, the DESL executable
  2. makesys a utility for producing local DESL documentation web pages
  3. shddoc, a scrambled documentation file which should NOT be editied

A 4-character code, which must be used to tie your downloaded version of DESL to a particular password, can be obtained by executing the utility deslpw.exe.

Failure to download deslpw.exe when you download the deslsys.exe or deslsys.tar will result in a situation in which you have a mismatch in the 4-character code reported by deslpw.exe and the password your DESL executable needs.

If there is a burden associated with beginning to use a new version of DESL it is that each new download will require the user to email or fax the order form to ViGYAN and be responded to with a matching password before the new version of DESL can be used.

Once the (new) password has been returned to you for the version of DESL you had downloaded you are ready to expand the archive deslsys.exe or deslsys.tar. Expanding this archive earlier will overstore your working version of DESL. Thus you will have produced a new version of DESL but have no immediate associated password to use with this new version.

For the PC

To expand the PC self-extracting archive deslsys.exe all that has to be done is to execute that file.

This file MUST be executed with the "-dir" argument.

Example : deslsys.exe -dir

Be aware that wherever the file deslsys.exe resides and is run from will be the top level of a small directory tree comprised of the \doc directory after the expansion has been completed.

In the directory where deslsys.exe existed there should have been created the file : desl.exe.

In the \doc directory (under the directory where deslsys.exe exists) there should be two files : shddoc and makesys.exe.

Once the deslsys.exe file has been executed successfully the downloaded files deslsys.exe" and "deslpw.exe" can be deleted.

For the Unix system

To expand the Unix tar file deslsys.tar all that has to be done is to execute : tar -xvf deslsys.tar

Be aware that wherever the file deslsys.tar resides and is run from will be the top level of a small directory tree comprised of the \doc directory after the expansion has been completed.

In the directory where deslsys.tar existed there should have been created the file : desl.

In the \doc directory (under the directory where deslsys.tar exists) there should be two files : shddoc and makesys.

Once the deslsys.exe file has been executed successfully the downloaded files deslsys.exe" and "deslpw.exe" can be deleted.

The file desl.exe (PC) or desl (Unix) is the DESL executable. A valid password MUST be provided as the first command to DESL. Later, a clean way of supplying this password to DESL without having to enter it each time the system is used will be discussed.

Two forms of the password are acceptable : the password for the demonstration version of DESL and the password for the unrestricted, or subscription, version of DESL.

Both of the versions of DESL are functionally identical but require different passwords. The demonstration version of DESL is free and will live for approximately one month from the time it was downloaded.

The downloadable DESL executable version will change as a function of time.

Most often, the only reason for the change is to have the executable tagged with a different set of two passwords - one for its "demonstration" use and the other for its "unrestricted" use. Of course there will also be times that a new DESL version will also contain updates and expanded capabilities from those of a previous version. If a new version of DESL contains any significant modifications and/or enhancements, they will be described in the update page.

Thus, when these web pages refer to a "demonstration" version of DESL and an "unrestricted" version of DESL, they are referring to the use of the single downloadable DESL executable and not the code's functionality. The supplied password is what governs which of these two modes DESL will be running in at any given time. The functionality of both "versions" is identical.

The DESLPW environmental variable is the best place to define the DESL password. Although it is not the only way for it to be defined, this method of definition is the cleanest way to define the DESL password.

A caveat : If a newer version of DESL is downloaded a new password will be effective and the DESLPW variable will have to be also updated.

On the PC :

SET DESLPW=JuerT673DoiWoOUy

On Unix platforms :

setenv DESLPW JuerT673DoiWoOUy

There is an additional means by which the DESL password may be set.

If a file called DESLPW exists in, first, the path defined by the DESLH Environmental variable or, second, the current directory and the content of the first line of this file is the 16-character DESL password, then the DESL password will be set.

It is intended that the demonstration version of DESL be downloaded only once for the approximately 30-day trial. Early in this new product's availability, however, this limitation may not be strictly enforced.

The subscription version of DESL has an indefinite life span. The required password will cause the version of DESL which was obtained within the one-year subscription period to continue to run beyond that period.

Future changes in DESL will force a situation, however, in which a previously downloaded subscription version of DESL will get more and more out of date. It is intended that development, expanding the capabilities of DESL, will continue indefinitely. During a paid subscription period DESL may be downloaded as often as is desired. Each DESL subscription version download, just as in the case of having downloaded the demonstration version of DESL, will have a new associated password.

If a new or renewing subscription is being ordered then some acceptable method of payment to initiate the subscription is also required to be faxed or emailed to ViGYAN.

Typically, a current DESL subscription user would have a working version of DESL and desire to download a newer version. When the new versions of deslsys.exe and deslpw.exe for the PC or deslsys.tar and deslpw.exe for Unix systems are downloaded the newly downloaded deslpw.exe utility can be immediately executed to yield a new 4-character code which can be sent to ViGYAN on an order form to cause a password to be emailed back.

Once the new password arrives the new version of deslsys.exe or deslsys.tar can be run or untarred, respectively, to yield the new DESL files. The new password can then be integrated into this system.

( quick5) (5) Installation Part 2.

Once the files have been produced from the self-extracting archive deslsys.exe (PC) or deslsys.tar (Unix) and a valid password has been obtained from ViGYAN, DESL is ready to be used.

If local web documentation is desired it must be produced by executing the makesys utility in the doc directory. Execution of makesys reads the scrambled file shddoc to yield a series of HTML files also in the doc directory. The home page for the DESL documentation is the file desl.htm in the doc directory. It is recommended that, unless there is an outstanding reason why you cannot do so, the documentation should exist on the local DESL host. Access to the web-style documentation is faster and the provision to include user notes in the produced documentation web pages is possible as part of having a DESL subscription. Each time a changes is needed in the local web pages because one or more user notes has changed and/or a new version of DESL has been downbloaded, the makesys utility can be reexecuted to update the local web pages.

Before a smooth operation of DESL can be achieved several environmental variables must be set. In fact the setting of one particular environment variable, DESLH, is mandatory for DESL to run successfully.

The DESLH environment variable is defined on the PC Windows 9X platform in the autoexec.bat file and at the appropriate control panel|system|environment|user variables window for Windows NT. For Unix systems the equivalent setenv command in the .login or .cshrc file is appropriate.

In the PC case the line in the autoexec.bat file could look like the following if the system was to be located in the recommended directory called "DESL" under the root directory on the C: drive :

SET DESLH=C:\DESL

This example will inform the Windows system that the desl.exe executable can be found at C:\DESL and implies that the documentation, if it will exist locally, will be at C:\DESL\DOC location. The situation is analogous on the NT platform.

In the Unix case the line in the .cshrc or .login files could look like the following if the system was to be located in the recommended directory called "desl" under the root directory :

setenv DESLH ~/desl

This example will inform the Unix system that the desl executable can be found at ~/desl and implies that the documentation, if it will exist locally, will be at ~/desl/doc location.

The total length of the DESLH path string should be no longer than 64 characters.

The DESLPW environmental variable is the best place to define the DESL password. Although it is not the only way for it to be defined, this method of definition is the cleanest way to define the DESL password.

There is an additional means by which the DESL password may be set.

If a file called DESLPW exists in, first, the path defined by the DESLH Environmental variable or, second, the current directory and the content of the first line of this file is the 16-character DESL password, then the DESL password will be set.

A caveat : If a newer version of DESL is downloaded a new password will be effective and the DESLPW variable will have to be also updated.

There are two other environment variables which can be optionally set.

There are two specially-named DESL input files - DESLINIT and DESLEXIT - which can exist either in the directory where DESL is being executed or can be pointed to by the environment variables DESLI and DESLX, respectively.

If either of these two files does exist in the current directory AND the respective environment variable is NOT set, then the version(s) of DESLINIT and/or DESLEXIT in the current directory will be used unless otherwise specifically prohibited.

These two files, if in existence, will be used at the very beginning and very end of a DESL session, respectively. These input files can contain anything a normal input file can contain.

In the PC case, the lines in the autoexec.bat file needed to set specific full path strings for these two files could look like :

SET DESLI=C:\DESL\DESLINIT

SET DESLX=C:\DESL\DESLEXIT

In the Unix case, the lines in the .cshrc or .login file needed to set specific full path strings for these two files could look like :

setenv DESLI ~/desl/start 

setenv DESLX ~/desl/complete

Typical contents of a DESL initialization file might be :

*
*  Define the DESL password (ALWAYS the FIRST command)
*  IF it is NOT defined in an environmental variable.
*
*  Turn ON overstoring and set the editor to the "vi" editor
*
os on
editor vi

whereas the typical contents of a DESL exit file might be :

*
*  Clean up the files "to be deleted" ...
*
cl
  go

( quick6) (6) Running DESL.

Assuming the DESLH environment variable has been defined properly, DESL can be executed from any location by entering desl on the DOS/Unix command line or, in the PC case, by selecting desl.exe from the start|run menu or by clicking on a previously-produced shortcut icon. In these latter two cases a MSDOS window is opened automatically.

As was stated earlier, both the demonstration or unrestricted (subscription) versions of DESL require an appropriate password and this password must be used when DESL is executed.

The DESLPW environmental variable is the best place to define the DESL password. Although it is not the only way for it to be defined, this method of definition is the cleanest way to define the DESL password.

There is an additional means by which the DESL password may be set.

If a file called DESLPW exists in, first, the path defined by the DESLH Environmental variable or, second, the current directory and the content of the first line of this file is the 16-character DESL password, then the DESL password will be set.

A caveat : If a newer version of DESL is downloaded a new password will be effective and the DESLPW variable will have to be also updated.

( quick7) (7) DESL Modes of Execution

DESL can be invoked to run in one of several modes.

  1. The purely interactive mode is the default mode if no DESL input file name follows the "desl" program name on the same line.

    Example : desl

    Here, following the carriage return after the desl invocation, DESL will solicit input from the user until the user causes the system to end.

  2. The purely batch mode is entered into when a DESL input file name follows the "desl" program name on the same line.

    Example : desl DESL_input1

    The above file "DESL_input1" should end with the stopn command to force the DESL session to end gracefully.

    Here DESL will read all of its input from the named alternate file until some form of the stop command is encountered.

  3. A third mode is a combination of both (1) and (2) above.

    Once DESL is begun in the purely interactive mode, one or more input files can be used to direct the DESL activity. (See the input command for more details.)

    Example :

    desl
    input dslinput1
    input dslinput2

    Here DESL will read all of its input from the two named alternate files and then return to the standard prompt to wait for more user input.

  4. A variation of the purely batch mode of input occurs when all of the input is contained in a string following desl. DESL can accept an encoded up-to-128-character input sequence on the command line itself.

    Example :
    desl FN#copy/files^run10/names^alpha^cl^cd^go/sn/

    where all of the DESL input is contained on the command line itself in an up-to 128-character string which contains no blanks. It is important to note here that whether or not an explicit "stop" or "stop" variation is specified at the end of the string it will be inferred; DESL will stop after using the commands, etc in the string.

    The syntax of such a string is the following :

    • FN : the symbolic name of a scratch file where the rest of the input will be temporarily saved
    • # :a separator between the file name and the rest of the string
    • / : a separator implying a new line
    • ^ :a separator implying a space

    The example above would have been equivalent to having specified the following more traditional input sequence :

    desl
     copy
      files run10
      names alpha cl cd go
     sn
    

    Regardless of the mode of the DESL invocation, except in the case of the specification of the input in a single string as described in (4) above, there are several DESL settings which can be effected on the command line - i.e., before DESL actually begins to execute.

    A command line which looks like :

    desl  (fn)  -opt1  -opt2  ...
    

    allows several options ( "opt1", "opt2", ...) to be set from the command line.

    ** Note that if an input file name ("fn") is specified if must be specified before any options are specified.

    The current allowable options and their meanings are :

    • -noecho

      Equivalent to "echo off", turning the DESL system echoing off. (See the echo command.)

    • -nolog

      Equivalent to "log off", turning the DESL system logging off. (See the log command.)

    • -asys

      Equivalent to "autosys on", turning on the DESL "system" prefixing capability. (See the system command.)

    • -V reg# val

      Equivalent to "reg set *V# val ", where "#" is a user value register number from 1 to 10 and "val" is a real or integer value to assign to the specified user value register. (See the register command.)

    • -N reg# str

      Equivalent to "reg set *N# str ", where "#" is a user name register number from 1 to 10 and "str" is an up-to 16-character string to assign to the specified user name register. (See the register command.)

( quick8) (8) User Interface

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/Unix) 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.

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.

( quick9) (9) DESL Commands

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

  1. no additional arguments
  2. more arguments to be entered on the same line as the command name or abbreviation itself
  3. more arguments in the form of options and argument lists to be specified on lines following the line on which the command name or abbreviation was specified

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.

Example :

DESL> status
DESL> reg set *N1 = Test61
DESL>

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.

Example(s) :

DESL> print
print> (print options and argument lists ...)
print> (print options and argument lists ...)
print> (print options and argument lists ... go)
DESL>

( quick10) (10) Command Options and Argument Lists

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 blinking 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.)



DESL Home | Website Outline | Commands | Examples | Download | Contacts


Contact the DESL manager

ViGYAN, Inc.
30 Research Drive
Hampton, VA 23666
Voice: (757) 865-1400
Toll Free: (800) 288-3998
FAX: (757) 865-8177

© 1999 ViGYAN, Inc.