Topic: APLX Help : Help on APL language : System Commands : )OUT Export to transfer file
[ Previous | Next | Contents | Index | APL Home ]

www.microapl.co.uk

)OUT (lib) filename (name(s))


Creates a Transfer File in the library specified. If no individual objects are named then the Transfer File will include all functions, operators and variables in the workspace as well as ⎕CT, ⎕FC, ⎕IO, ⎕LX, ⎕PP, ⎕PR and ⎕RL. Alternatively, specified objects may be written to the Transfer File together with an optional selection of system variables.

             )WSID                   (Sample workspace)
       TEST
             )VARS
       A       B       C       D
             )FNS
       FRED    JOE
             )OUT TESTWS             (Export everything, including standard
                                      system variables)
             )OUT PARTWS A C FRED ⎕PP ⎕PW
                                     (Partial export only)

The Transfer File is written in a format which can be read using the system command )IN by APLX or by another APL interpreter such as IBM's APL2. Before it is written, the data is translated to the form similar to that used by APL2/PC. Not all APLX characters can be represented in this form, and variables containing control codes should not be transferred.

Library specification and path names

There are two different ways in which you can specify where APLX should save the transfer file:

  • You can specify the workspace name as just the base name of the file, for example MYWS or Budget03, optionally preceded by a library number. In this case, APLX appends the default file-extension .atf to the name, and saves the file in the directory corresponding to the specified library number. Library numbers 0 to 9 are set up either using the Preferences dialog, or by using the ⎕MOUNT system function. Library 10 contains the utility and demonstration workspaces supplied with APLX. If you omit the library number, library 0 is assumed.
  • You can specify a full operating-system path name, including directory separation characters, such as /usr/transfer/Budget03.atf (Linux), C:\transfer\Budget03.atf (Windows), or MacHD::transfer:Budget03.atf (MacOS). APLX uses the path name exactly as supplied, so you usually need to provide the .atf file extension explicitly. (Note: In Client-Server implementations of APLX, you can specify that the path refers to the Client or Server machine by preceding the file name with an Up Arrow or Down Arrow ).

See the description of the )LOAD system command for more detail on libraries and path names.

Transfer file format

The Transfer File format is based on an ancient layout known as punched card layout and is a series of length 80 character records. Each record is delimited by an 'end of record' character (Hex F8) and a Carriage Return - Line Feed pair - making 83 characters in all. The first character of each record is reserved for format information, which will be:

       Character                     Meaning
          *                          Timestamp for the function or operator
          X                          Last record for the object (or only record)
              (blank)                All other records

Remaining columns of the record are occupied by the Transfer Form of the objects selected. The Transfer Form is described under ⎕TF Thus for the sample workspace shown above:

      XN⎕PP 0 10                                                                     X
      XN⎕IO 0 1                                                                      X
      XN⎕CT 0 1E¯13                                                                  X
      XC⎕FC 1 6 .,*0-                                                                X
      XN⎕RL 0 16807                                                                  X
      XC⎕PR 1 1                                                                      X
      XC⎕LX 1 0                                                                      X
      XNA 0 1                                                                        X
      XNB 0 2                                                                        X
      XNC 0 3                                                                        X
      XND 0 4                                                                        X
      XFFRED ⎕FX 'FRED' '2'                                                          X
      XFJOE ⎕FX 'JOE' '4' 'L:''SAMPLE FN''' '80'                                     X

and for the partial export:

      XNA 0 1                                                                        X
      XNC 0 3                                                                        X
      XFFRED ⎕FX 'FRED' '2'                                                          X
      XN⎕PP 0 10                                                                     X
      XN⎕PW 0 80                                                                     X

Topic: APLX Help : Help on APL language : System Commands : )OUT Export to transfer file
[ Previous | Next | Contents | Index | APL Home ]