Search                        Top                                  Index
REF OBSOLETE                                        John Gibson Feb 1993

         COPYRIGHT University of Sussex 1993. All Rights Reserved.

<<<<<<<<<<<<<<<<<<<<<                             >>>>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<<<    OBSOLETE  PROCEDURES     >>>>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<<<                             >>>>>>>>>>>>>>>>>>>>>>

This REF file  details various  identifiers which  have become  obsolete
with the release of further versions of Poplog.

         CONTENTS - (Use <ENTER> g to access required sections)

  1   Pop-11 Compiler

  2   Virtual Machine Compiler

  3   Filename Processing

  4   Processes

  5   Subsystems

  6   Mishaps & Warnings

  7   External Procedures

  8   Ved
      8.1   Ved Search Mechanism

  9   Poplog X Interface

 10   Miscellaneous

1  Pop-11 Compiler

These procedures were obsoleted in Version 13. See REF * POPCOMPILE  for
the new equivalents.

popval(list)                                                 [procedure]
        Now the same as pop11_compile(list).

syscompile()                                                 [procedure]
        Replaced by * pop11_comp_stream.

systxsqcomp_exec(closer) -> found                            [procedure]
        Replaced by * pop11_exec_stmnt_seq_to.

systxsqcomp(closer) -> found                                 [procedure]
        Replaced by * pop11_comp_stmnt_seq_to.

sysxsqcomp(allow_stmnt)                                      [procedure]
        Replaced by  * pop11_comp_stmnt_seq  for allow_stmnt  true,  and
        * pop11_comp_expr_seq  for  allow_stmnt  false  (both  with   no

systxcomp(closer) -> found                                   [procedure]
        Replaced by * pop11_comp_expr_to.

sysxcomp()                                                   [procedure]
        Replaced by * pop11_comp_expr.

sys_expr_comp(prec, update) -> nextitem                      [procedure]
        Replaced by * pop11_comp_prec_expr.

sysDUMMY_PREOP(dummy)                                        [procedure]
sysDUMMY(dummy)                                              [procedure]
        Replaced by * pop11_EMPTY and * pop11_FLUSHED respectively.

sysstructure(closer) -> bool                                 [procedure]
        Replaced by * pop11_comp_constructor.

sys_read_vars(decl_p)                                        [procedure]
        Replaced by * pop11_comp_declaration.

sysneed(item) -> found                                       [procedure]
systry(item) -> found                                        [procedure]
sysnmtry(item) -> found                                      [procedure]
        Replaced  by  * pop11_need_nextitem,  * pop11_try_nextitem   and
        * pop11_try_nextreaditem respectively.

sysloop(lab)                                                 [procedure]
sysloopend(lab)                                              [procedure]
        Replaced    by    * pop11_loop_start    and     * pop11_loop_end

pop_args_warning -> bool                                      [variable]
bool -> pop_args_warning
popconstruct -> bool                                          [variable]
bool -> popconstruct
popdefineconstant -> bool                                     [variable]
bool -> popdefineconstant
popdefineprocedure -> bool                                    [variable]
bool -> popdefineprocedure
        These Pop-11 compiler variables are now superseded by flag  bits
        in the variable * pop_pop11_flags  (although for the time  being
        they remain as autoloadable active variables which set/clear the
        corresponding flags when accessed/updated).

        See REF * pop_pop11_flags and HELP * compile_mode.

popsetpop()                                         [procedure variable]
        Previously, the procedure in this variable was called by setpop,
        and was redefined by other language subsystems to allow them  to
        re-gain control after a setpop; this function is now replaced by
        * pop_setpop_compiler.

        For upward compatibility, popsetpop  (default value identfn)  is
        still   called    by   the    standard   Pop-11    version    of

recordclass                                                     [syntax]
vectorclass                                                     [syntax]
        Old Pop-11  syntax  forms for  defining  new record  and  vector
        classes, replaced by the single construct defclass described  in
        REF * DEFSTRUCT.

prefix                                                          [syntax]
        This construct was obsoleted years ago by the section  mechanism
        (but is still available in $popobsoletelib, see HELP * PREFIX).

2  Virtual Machine Compiler

pop_optimise -> bool                                          [variable]
bool -> pop_optimise
popconstants -> bool                                          [variable]
bool -> popconstants
        The roles  previously  played by  these  two variables  are  now
        combined in the single variable pop_debugging (although for  the
        time being they  remain as autoloadable  active variables  which
        access or update pop_debugging).

        Permanent constants were  previously 'turned  off' by  assigning
        false to  popconstants; this  now corresponds  to  pop_debugging
        having the value true. Since the default value of  pop_debugging
        is "undef", constants are (as before) on by default.

        Setting pop_optimise true previously caused  the VM to do  extra
        optimisation; this now happens when pop_debugging is false (i.e.
        extra optimisation is also off by default).

        See REF * pop_debugging.

sysnlabel() -> label                                         [procedure]
        Old name for sysNEW_LABEL. See REF * sysNEW_LABEL.

sysnvariable() -> word                                       [procedure]
        An old procedure used to generate temporary permanent  variables
        before  the   advent  of   lexical  identifiers.   Replaced   by
        sysNEW_LVAR which  generates  temporary lexical  variables.  See
        REF * sysNEW_LVAR.

sysFIELD_VAL(field_num, key_or_spec)      [protected procedure variable]
sysUFIELD_VAL(field_num, key_or_spec)     [protected procedure variable]
sysSUBSCR(key_or_spec)                    [protected procedure variable]
sysUSUBSCR(key_or_spec)                   [protected procedure variable]
        These procedures for planting VM code to access/update structure
        fields are superseded  by sysFIELD for  accessing and  sysUFIELD
        for updating -- see REF * VMCODE.

3  Filename Processing

sysfileparse(filename) -> fvec                               [procedure]
sysfilefield(filename, N) -> string                          [procedure]
sysfilehost(filename) -> host                                [procedure]
sysfiledisk(filename) -> disk                                [procedure]
sysfiledir(filename) -> dir                                  [procedure]
sysfilename(filename) -> name                                [procedure]
sysfileextension(filename) -> extn                           [procedure]
sysfiletype(filename) -> type                                [procedure]
sysfileversion(filename) -> version                          [procedure]
sysfullfilename(filename) -> fullname                        [procedure]
        These procedures for filename  parsing and extraction of  fields
        are replaced by * sys_fname and its associated procedures.

sysdirectory() -> dir                                        [procedure]
dir -> sysdirectory()
        Returns/updates the current working  directory. Replaced by  the
        active variable * current_directory.

4  Processes

See REF * PROCESS for the new equivalents.

consprocto(n, p) -> proc                                     [procedure]
        An old (unsatisfactory) procedure for constructing a process out
        of part of  the current  calling chain. Replaced  by the  better
        consproc_to   used   (if    required)   in   conjunction    with

deadproc(proc) -> bool                                       [procedure]
        Used to test if the process proc is dead or alive.    Superseded
        by isliveprocess.

5  Subsystems

Subsequent to Version 14.2, the old LIB SUBSYSTEM is replaced by support
built into the core. The  subsystem integer subscripts SS_NAME, etc  are
now  available  from  the  include  file  INCLUDE * SUBSYSTEM,  and  the
procedures below  have  been  obsoleted. See  REF * SUBSYSTEM  for  more

current_subsystem_name() -> ss_name                          [procedure]
ss_name -> current_subsystem_name()
        Now equivalent to sys_compiler_subsystem(`c`), i.e.

                sys_compiler_subsystem(`c`) -> ss_name;
                ss_name -> sys_compiler_subsystem(`c`);

        (However, note that  sys_compiler_subsystem returns or  replaces
        the most  recent  compiler-subsystem invocation,  which  is  not
        necessarily the  same  as  the most  recent  invocation  of  any
        compiler. See Current Subsystem & Current Compiler Subsystem  in
        REF * SUBSYSTEM.)

switch_subsystem_to(ss_name)                                 [procedure]
        Now equivalent to

            ss_name -> sys_compiler_subsystem(`c`);

subsystem_initcomp()                                         [procedure]
subsystem_banner()                                           [procedure]
subsystem_xsetup()                                           [procedure]
        These are now the same as



subsystem_syssetup()                                         [procedure]
        This is now the procedure syssetup.

subsystem_nest(source)                                       [procedure]
        Now equivalent to

            subsystem_compile(source, false);

subsystem_nest_warn(filename)                       [procedure variable]
        Renamed subsystem_compile_warn.

6  Mishaps & Warnings

From  Version  15+,  a  new  exception  mechanism  makes  the  following
procedures obsolete -- see REF * EXCEPTION.

prmishap(item1, item2, ..., itemN, N, string)       [procedure variable]
prmishap(string, list)
        For  backward  compatibility,  * sys_pr_exception  (the  default
        value of  * pop_pr_exception) still  calls prmishap  for  errors
        if it has a value other than sysprmishap.

        Depending on the treatment required, all types of exception  can
        now be  handled  by redefining  either  * pop_exception_handler,
        * pop_exception_final or * pop_pr_exception.

pop_default_prmishap(string, list)                  [procedure variable]
        Use * pop_default_pr_exception instead.

sysprmishap(item1, item2, ..., itemN, N, string)             [procedure]
sysprmishap(string, list)
        Obsoleted by * sys_pr_message. Now the same as

            sys_pr_message( if isinteger(N) then N, string
                            else destlist(string), N
                            endif, nullstring, `E`)

warning(item1, item2, ..., itemN, N, string)        [procedure variable]
warning(string, list)
        Obsoleted by * sys_pr_message. Now the same as

            sys_pr_message( if isinteger(N) then N, string
                            else destlist(string), N
                            endif, nullstring, `W`)

prwarning(word)                                     [procedure variable]
        For  backward  compatibility,  * sys_pr_exception  (the  default
        value  of   * pop_pr_exception)   still  calls   prwarning   for
        sysdeclare warnings if it has  a value other than  sysprwarning.
        (A sysdeclare warning  is identified by  the exception  idstring

        Depending on  the treatment  required, sysdeclare  warnings  (as
        with all  other exceptions)  can now  be handled  by  redefining
        either   * pop_exception_handler,    * pop_exception_final    or
        * pop_pr_exception.

sysprwarning(word)                                           [procedure]
        Obsoleted by * sys_pr_message (which is  what now adds items  to
        popwarnings,  when  given  the  sysdeclare  exception   idstring
        'vm-ident:name-ref-none'). Same as

           sys_pr_message(word, 1, {'%DECLARING VARIABLE %P' '' 16:01},
                                'vm-ident:name-ref-none', `W`)

newprwarning(word)                                           [procedure]
        Obsoleted by  * pop_message_min_detail,  which can  be  used  to
        control the minimum  detail level  for all  messages printed  by
        * sys_pr_message.

7  External Procedures

From Version 13.81 of Poplog,  the main support for external  procedures
is no longer  in terms  of a  distinguished "external_procedure"  record
class; instead, external functions/procedures can be represented by  any
external pointer class  structure (like  all other  external data).  The
following procedures are therefore redundant  (but remain in the  system
for upward compatibility).

external_load(mark_item, object_file_list, symbol_list)      [procedure]
        Replaced by  the syntax  construct  exload (also  the  procedure
        which that employs, external_do_load). See REF * EXTERNAL.

external_apply(arg_1, arg_2, ..., arg_N, N, result,          [procedure]
        Replaced by the  syntax constructs exacc  (which employs the  VM
        instruction sysFIELD  to  plant  in-line code  for  an  external
        function  call),  and   defexacc  (which   uses  the   procedure
        cons_access  to   construct   apply  procedures   for   external
        functions). See REF * DEFSTRUCT and REF * EXTERNAL.

isexternal_procedure(item) -> bool                           [procedure]
        The separate "external_procedure" record  class is not  required
        by the new facilities (but will function as an external  pointer
        by virtue of being external pointer-class).

islive_external_procedure(expdr) -> bool                     [procedure]
        Replaced    (for    any     external    pointer    class)     by
        is_valid_external_pointer (see REF * EXTERNAL_DATA).

8  Ved

popcompiler -> p                                    [procedure variable]
p -> popcompiler
        This variable previously held the compiler procedure  associated
        with the current Ved  file. It is now  replaced by the  variable
        subsystem, which holds  the subsystem name  for the current  Ved
        file. For  backward  compatibility, popcompiler  remains  as  an
        autoloadable active variable which translates between  subsystem
        and the corresponding compiler procedure.

trysetvalof(id_name, true_msg, false_msg)                    [procedure]
        Replaced by * vedtrysetvalof.

vedputchar                                                   [procedure]
        Obsolete synonym for * vedinput.

vedtermsetup()                                      [procedure variable]
        Old initialisation procedure for Ved: used to call vedsetup  and
        then do some extra  work to initialise  the terminal type.  This
        extra work is now performed by a separate procedure  vedinitterm
        called from inside  vedsetup, making the  latter sufficient  for
        all initialisation.  The name  vedtermsetup is  maintained  as a
        synonym for vedsetup.

ved_what()                                                   [procedure]
ved_whats()                                                  [procedure]
        Replaced by ved_? and ved_?? respectively. See HELP * QUERY.

vedmatchbracket(char1, char2, p1, p2, p3)                    [procedure]
        This procedure is to be withdrawn. Use vedfindbracket instead.

vedsaveglobals(vedfile_struct)                               [procedure]
vedsetglobals(vedfile_struct)                                [procedure]
        These procedures are no longer  necessary, since the new  active
        variable * ved_current_file automatically saves the variables of
        the current  file and  set the  variables for  a new  file  when
        assigned to. The only requirement which this does not meet is to
        save the variables of the  current file without changing  files;
        use * ved_save_file_globals for this.

vedwasonstatus -> bool                                        [variable]
bool -> vedwasonstatus
        Prior to the  introduction of  ved_current_file, programs  saved
        Ved variables with vedsaveglobals, which always switched a  file
        off the status  line but retained  the state in  vedwasonstatus.
        With  ved_current_file  this  variable  is  now  defunct,  since
        ved_current_file does not tamper with the on/off status, i.e. it
        always restores a  file on  status if  that was  its state  when
        saved (although,  as  before,  the values  stored  in  the  file
        structure are  always  the  file  values  not  the  status  line

vedswitchstatus()                                            [procedure]
        Replaced by the active  variable * ved_on_status. It remains  as
        an autoloadable procedure which just does

                not(ved_on_status) -> ved_on_status

vedstatusheader -> string                                     [variable]
string -> vedstatusheader
        This string was formerly  used as the start  of the status  line
        (including space for the line number of the current file). It is
        no longer used by Ved, which now creates the status line display
        directly from the  variables vedscreenstatus_-_mark  et al  (see
        Special Character Variables in REF * VEDVARS).

        Programs that previously used


        to get the length of the header part should now use the constant

vededitor(defaults_p, file)                                  [procedure]
vedgetfile(defaults_p, file)                                 [procedure]
        Both these procedures  are replaced  by * vededit,  and are  the
        same as

            vededit(file, defaults_p)

vedselect(file)                                              [procedure]
vedselect(file, setfocus)
        Replaced by * vededit. Same as

            vededit(file, setfocus)

vedgraphicmode -> bool                                        [variable]
        Replaced by the bit VEDCMODE_GRAPHIC in * vedscreencharmode.

vedscreengraphoff()                                          [procedure]
vedscreengraphon()                                           [procedure]
        These procedures are now  the same as  setting and clearing  the
        bit VEDCMODE_GRAPHIC in * vedscreencharmode.

vedscreencommandmark                                          [variable]
vedscreenlinemark                                             [variable]
vedscreencursor                                               [variable]
vedscreencursormark                                           [variable]
vedscreenmark                                                 [variable]
        Old names for special (usually graphics) characters used on  the
        Ved status line  and for marking  ranges, etc. The  replacements
        are as follows:

            Old Name                 Replacement Name
            --------                 ----------------
            vedscreencommandmark     vedscreenstatus_-|_mark

            vedscreenlinemark        vedscreenstatus_|-_mark

            vedscreencursor          vedscreenstatus_-_mark
                                     (for status line character)
                                     (for cursor mark character)

            vedscreencursormark      vedscreencursorlinerangemark

            vedscreenmark            vedscreenrangemark
                                     (for range mark character)
                                     (for text beyond EOL character)

        The variables vedscreencursor and vedscreenmark have been  split
        into  two  separate   characters;  the  old   names  remain   as
        autoloadable active  variables  which  assign to  both  the  new
        replacements in each case.

graphcharsetup()                                             [procedure]
        This  procedure  previously  assigned  terminal-dependent  8-bit
        character codes  for various  graphics characters  to a  set  of

        It is now  superseded by a  standard set of  codes for  graphics
        characters   (which   are   translated   on   output   by    the
        terminal-dependent  procedure   vedscreengraphtrans).  See   Ved
        Standard Graphics Characters in REF * VEDPROCS.

        Note that continued use  of graphcharsetup is incompatible  with
        use of the 8-bit  ISO Latin character set  in Poplog (since  the
        old graphics codes  conflict with these).  If graphcharsetup  is
        called, and pop_character_set has a true value (which it has  by
        default), then a warning message is output and pop_character_set
        is set false.

issubitem(sub_string, n, string) -> m                        [procedure]
        Renamed * vedissubitem.

chartype(char) -> char                              [procedure variable]
        Obsolete synonym for * vedchartype.

wved_get_one_input() -> string                               [procedure]
        An old procedure previously needed for PWM Ved. It just does

            consstring(`A`, vedinascii(), 2)

        and is no longer used by anything in Ved or XVed (vedinascii  is
        called directly).

8.1  Ved Search Mechanism
REF * VEDSEARCH  describes  the  regular  expression  based  Ved  search
mechanism. The facilities described here are from an earlier Ved  search
and substitution mechanism:

vvedquery -> char                                             [variable]
char -> vvedquery
vvedsrchendline -> char                                       [variable]
char -> vvedsrchendline
vvedsrchstartline -> char                                     [variable]
char -> vvedsrchstartline
vvedampersand -> char                                         [variable]
char -> vvedampersand
vvedpercent -> char                                           [variable]
char -> vvedpercent
        These variables are no longer used by the Ved search mechanism.

vedfoundcol -> int                                            [variable]
int -> vedfoundcol
        Replaced by ved_query_last_search. See REF * VEDSEARCH.

        Holds the  integer  value  of  the  column  in  which  the  last
        character of the  most recently  used search  string was  found.
        (See also vedfoundline )

vedfoundline -> int                                           [variable]
int -> vedfoundline
        Replaced by ved_query_last_search. See REF * VEDSEARCH.

        The line in which the last  character of the most recently  used
        search string was last found. (See also vedfoundcol )

vvedanywhere -> bool                                          [variable]
bool -> vvedanywhere
        true if the  last Ved search  was not restricted  to strings  on
        item boundaries.

vvedinstring -> string                                        [variable]
string -> vvedinstring
        The text string last used  by a substitute  command.

        Replaced   by   ved_set_search    and   ved_search_state.    See
        REF * VEDSEARCH.

vvedsrchsize -> int                                           [variable]
int -> vvedsrchsize
        Size  of  last   search  string   (vvedsrchstring).

        Setting this variable no longer has any effect. The variable  is
        no longer used by the Ved search mechanism.

vvedsrchstring -> string                                      [variable]
string -> vvedsrchstring
vvedoldsrchdisplay -> string                                  [variable]
string -> vvedoldsrchdisplay
        Replaced   by    ved_query_last_search,    ved_set_search    and
        ved_search_state. See REF * VEDSEARCH.

        These two variables are now synonymous. They represent the last
        search pattern string that was looked for.

vedbacklocate(string)                               [procedure variable]
        This can now be done with:

            ved_check_search(string, [back])

        Search backwards for last occurrence of string.

vedlocate(item)                                              [procedure]
        This can now be done with:

            ved_check_search(string, [])

        and (to ensure that string is not embedded in other text):

            ved_check_search(string, [noembed])

        Search forward  for item.  If item  is a  word or  integer  then
        insist that it is not embedded. (Uses VEDTESTSEARCH).

vedtestclsearch(string, bool) -> vec_or_false                [procedure]
        This can now be done with:

            ved_try_search(string, [nocase]) -> bool

        and (when the bool argument to vedtestclsearch is false):

            ved_try_search(string, [nocase noembed]) -> bool

        (Use ved_query_last_search  to  obtain the  coordinates  of  the
        match. Remembering to dlocal ved_search_state if necessary).

        Search for string regardless of case, allowing it to be embedded
        if bool is true. Returns <false> or a <vector> of the form

                {^line ^column}

vedtestsearch(string, bool) -> bool                          [procedure]
        This can now be done with:

            ved_try_search(string, []) -> bool

        and (when the bool argument to vedtestsearch is false):

            ved_try_search(string, [noembed]) -> bool

        Search for next occurrence of string in the current file. If the
        given bool  is  false then  the  string  must occur  on  a  word
        boundary (i.e. it  cannot be embedded  in other words).  Returns
        <true> if the search was successful.

vedteststartsearch(string) -> line_or_false                  [procedure]
        This can now be done with ved_try_search.

        Search for a line  in the current Ved  buffer starting with  the
        string. Search starts from current  line and wraps round top  of
        buffer. Cannot use search patterns. Returns line number or false
        if not found.

vedcllocate(string, bool)                                    [procedure]
        This can now be done with:

            ved_check_search(string, [nocase])

        and (when the bool argument to vedcllocate is false):

            ved_check_search(string, [nocase noembed])

        Searches for string regardless  of case. If  bool is true,  then
        string need  not lie  on a  text item  boundary. The  cursor  is
        positioned at the  first occurrence of  string. When given  only
        one argument,  a string  is interpreted  as if  bool were  true,
        whilst a word is interpreted as a string and bool false.

9  Poplog X Interface

LIB * XolConstants has  been superseded  by INCLUDE * XolConstants.  See

XptInterruptHandler(dev, display)                            [procedure]
fast_XptInterruptHandler(dev, display)                       [procedure]
XptAsyncDisplay(display) -> bool                             [procedure]
bool -> XptAsyncDisplay(display)
        Prior  to   the   introduction  of * XptAsyncAppContext,   these
        procedures enabled control of asynchronous processing for server
        events on a display. They are now withdrawn.

        They are  superseded  by XptAsyncAppContext,  which  gives  full
        asynchronous processing  of  all  toolkit  events  for  a  given
        application context (i.e.  server events,  timers and  alternate

XptDeferApply(p)                                             [procedure]
        Replaced   with    * external_defer_apply   (with    the    same

10  Miscellaneous

devname(dev) -> string                                       [procedure]
        Old name for * device_open_name.

p1 pdcomp p2 -> p3                                          [operator 3]
        The generic operator <> can  be used to compose procedures.  See
        REF * DATA and REF * PROCEDURE.

struct1 ncjoin struct2 -> struct3                          [operator -5]
        Old name for * nc_<>.

popdevraw -> dev                                              [variable]
dev -> popdevraw
        Prior to the introduction of poprawdevin and poprawdevout,  this
        (active) variable  contained a  combined read/write  device  for
        'raw mode' terminal I/O. It  is now an autoloadable synonym  for
        poprawdevin,  but,  to  maintain  upward  compatibility,  output
        operations (syswrite or sysflush) applied to poprawdevin will be
        redirected to to poprawdevout. See REF * SYSIO.

popdplaces -> int                                             [variable]
int -> popdplaces
        Old name for * pop_pr_places.

popliblist -> search_list                                     [variable]
search_list -> popliblist
        Old name for * popautolist.

realof(num) -> num                                           [procedure]
        Obsolete, use * number_coerce.

real1 =< real2 -> bool                                      [operator 6]
        Synonym for <=.  Its use is STRONGLY deprecated.

sys_inputon_terminal(dev)                                    [procedure]
        Old name for * sys_input_waiting.

sysiomessage() -> string                                     [procedure]
        This O/S error message string returned by this procedure can now
        be obtained with

                sprintf(' (%M)')

        i.e. using the %M specifier of * printf.

sys_purge_terminal(dev)                                      [procedure]
        Old name for * sys_clear_input.

io_handler(dev) -> trap_p                                    [procedure]
trap_p -> io_handler(dev)
        This procedure  enabled  the  association of  a  trap  procedure
        trap_p with a readable device dev to handle unsolicited input on
        the device via the SIG_IO  signal mechanism. It is now  replaced
        by * sys_async_input,  which  takes  a  trap  handler  procedure
        directly (and which n.b, unlike the io_handler procedure, is not
        passed the device as argument).

INCLUDE_constant                                                 [macro]
        Now replaced by the * iconstant declaration.

sysfork() -> pid                                             [procedure]
sysvfork() -> pid                                            [procedure]
        (Unix) Replaced by * sys_fork and * sys_vfork. Now the same as

            sys_fork(true) -> pid
            sys_vfork(true) -> pid


sysspawn(command, input, output, wait) -> pid                [procedure]
        (VMS) Replaced by * sys_spawn. With wait true, now the same as

            sys_spawn(command, input, output, true, false)
                                            -> (pid, pop_status)

        (i.e. the  new procedure  returns the  exit status  as a  second
        result instead of assigning it to pop_status.)

        With wait false, same as

            sys_spawn(command, input, output, false, true) -> pid

syswait() -> pid                                             [procedure]
        (Unix & VMS) Replaced by * sys_wait. Now the same as

            sys_wait(false) -> (pid, pop_status)

        (i.e. the  new procedure  returns the  exit status  as a  second
        result instead of assigning it to pop_status.)

syssettimer(hsecs)                                           [procedure]
syssettimer(hsecs, p)
syscantimer()                                                [procedure]
        Superseded by * sys_timer.

sys_async_input(sdev) -> ast_p_or_false                      [procedure]
ast_p_or_false -> sys_async_input(sdev)
        Replaced by * sys_async_io with condition argument 0.

timer_interrupt()                                   [procedure variable]
        Obsolete   variable   whose   identifier   is   the   value   of
        sys_signal_handler for  the signal  SIG_ALRM (but  which is  now
        unusable, since the system employs it to implement * sys_timer).

io_interrupt()                                      [procedure variable]
        Obsolete   variable   whose   identifier   is   the   value   of
        sys_signal_handler for  the  signal  SIG_IO (but  which  is  now
        unusable,   since   the   system   employs   it   to   implement
        * sys_async_io).

--- C.all/ref/obsolete
--- Copyright University of Sussex 1993. All rights reserved.