HELP NEWS.V12                                          A.Sloman Oct 1986

For most recent news, see HELP * NEWS

April 1986  POPLOG VERSION 12

    There are many  new features described in the  following news items,
    and  in HELP  *  LISPNEWS  and HELP  *  PLOGNEWS, including  RATIOS,
    COMPLEX NUMBERS, a POPLOG WINDOW MANAGER, a much improved and almost
    complete  COMMON LISP,  various new  library programs  including LIB
    FLAVOURS (see  TEACH * FLAVOURS),  a large collection of  bug fixes,
    rationalisation  of the  libraries,  and  a substantial  performance
    improvement for  PROLOG (up  to 4.5 klips  for 'naive  reverse' on a
    Systime 8750).

    The  POP-11  language has  been  substantially  extended (partly  by
    adding facilities required for  common lisp), including full lexical
    scoping  and non-local  goto. See  REF *  NUMBERS and  REF *  VMCODE
    especially.

    There  will  shortly be  a  POPLOG  USERGUIDE  and a  VED  USERGUIDE
    available  as   manuals,  and  a   VED  PROGRAMMER'S  guide   is  in
    preparation.

-----------------------------------------------------------------------
May 1 (Aaron Sloman)
    VEDRANGEREPEATER sometimes produced spurious characters at end of
    'current' line. Fixed by calling  vedtrimline.
    See HELP *VEDPROCS /vedrangerepeater

Apr 30 (Aaron Sloman)
    --- fixed lib regions (it previously used 'lambda ... end' instead of
        'procedure ... endprocedure)
    --- ved_diff used not to call vedsetlinesize or vedtrimline where it
        should have. Now fixed. (See HELP * DIFF)
    --- HELP * VEDCOMMS updated (ved_what and ved_diff)
    --- Other HELP files updated: *VARS *ARRAYS *NEWARRAY *NEWANYARRAY

Apr 23 (John Willliams)
    --- VED_SMR (sort marked range) generalised: if argument is '-f' it
    "folds" uppercase into lower case. See HELP *VEDCOMMS/ved_smr

Apr 22 (Mark Rubinstein)
    --- CANCEL will no longer cancel protected words.  See HELP * CANCEL.

Apr 22 (John Gibson)
    --- A major bug has been found in some of the procedures concerned
    with device output. Under some circumstances, a call of -syswrite-
    on a device would have caused the corruption of the structure
    immediately following the device in memory. This bug (which has been
    in all versions of Poplog since its earliest days) was almost
    certainly responsible for many of the unrepeatable crashes that
    happened from time to time in the past (crashes inside the garbage
    collector in particular). Needless to say, the bug is now fixed.

Apr 20 (John Williams and Aaron Sloman)
    --- The old LISP system is being  withdrawn. See HELP * LISP

    The old HELP  LISP is  now $usepop/pop/lsp/lisp.

    The directory $usepop/pop/lsp/*  (UNIX) or  USEPOP:[POP.LSP...] (VMS)
    will be removed from POPLOG Version 13.

Apr 20 (Aaron Sloman)
    HELP * VED_WHAT describes an experimental enhanced mechanism
    for finding out about POP-11 or VED system procedures or variables.

Apr 15 (Mark Rubinstein)
    --- LIB INSTANCE altered so that the undefaction procedure (if
    provided) will be called if the value of a "?" variable is an undef
    object.  Previously it was only called if the identprops were undef.
    See HELP * INSTANCE.

Apr 14 (Sak Wathanasin)
    --- HELP * PLOGNEWS updated

Apr 13 (Aaron Sloman)
    --- HELP *INITIAL for VMS and UNIX updated and merged. (POPLOG
    initialisation overview files).
    NB: the comment on 'init.pl' files was wrong previously.

    --- New HELP files for LIB * VED_IMCSH (running C-shell from a
    VED window). See HELP *IMCSH  *CSH_COMPILE  *KILLCSH

    --- Environment variable $POPCOMPPATH extended to include
    $POPLIBLIB: (For running POP-11 with a parameter to invoke a file).

    --- LIB * VED_SOURCFILE: bug fixed and speeded up. Now finds exact
    match first. (See HELP *POPINDEX)

Apr 11 (Aaron Sloman)
    --- DOC *SYSSPEC thoroughly updated

    --- REF *FASTPROCS brought up to date

    --- HELP files updated:
        *BEGINNERS  *BITWISE  *CONTENTS  *HELPFILES  *POPLOG
        *POPPROCS  *SYSWORDS  *UNDO  *VEDCOMMS

    --- The  default help file is  now *BEGINNERS. *INDEX is  now
    just a list of files. HELP *HELPINDEX is withdrawn.

    --- VED <ENTER> g can be used to examine help or teach files with
    section headers and table of contents in the form described in
    HELP * ENTER_G. See LIB * VED_G. Some related utilities:
        VED_HEADING can format POPLOG-style headers in a file,
        VED_INDEXIFY  builds a  table of  contents for  VED_G.
            (Use to create a 'temporary menu' for a long file.)

Apr 6  (Ben Rubinstein)
    --- There is now a preliminary release of the
        POPLOG WINDOW MANAGER
        See HELP files: * PWM   * PWMWINDOWS   * PWMGRAPHICS

Apr 6  (Aaron Sloman)
    --- HELP * POPVARS updated and reformatted. HELP * STRINGS extended.

Mar 25 (John Williams)
    ---  LIB  *POPHOST  now  has  two  new  fields,  "machinetype",  and
    "fullsitename". Also, the field "osversion" is now computed from the
    tail of the  list SYS_OS_TYPE, and may differ slightly  from what it
    used to be in some versions of POPLOG.

Mar 22 (Aaron Sloman)
    --- ISENDSTRING  takes two  words or strings  and tests  whether the
    first is a final substring of the second. See HELP * ISENDSTRING.

Mar 17 (Mark Rubinstein)
    ---  (UNIX  only).  *SYSGETPASSWDENTRY   will  return  a  vector  of
    information got from the 'passwd' file.
    NOTE (SUNS  only). On Suns  using the network 'yellow  pages' passwd
    databases the network entry will  be retrieved, but modifications to
    the passwd  entry specified in the  local 'passwd' file will  not be
    shown. See MAN PASSWD(5).

Mar 16 (John Gibson)
    --- The  VED commands copy, d,  mi, mo, ti,  to etc, as well  as the
    line deleting  function now  replace interactive-mode  prompt marker
    characters with spaces (thus producing normal editable lines).

    ---  (Unix Only)  All  files  opened by  Poplog  now  have the  Unix
    'close-on-execute'  flag set  automatically.  This  means that  on a
    -sysexecute-  all files  will  be closed,  except that  -sysexecute-
    unsets  the   flag  for  the  three   standard  devices  -popdevin-,
    -popdevout- and -popdeverr-. You can  also supply a (non-empty) list
    of  devices  to  be  left  open  as  an  optional  4th  argument  to
    -sysexecute-.

Mar  6 (Ben Rubinstein)
    ---  VEDSUN,   VEDWINSUN,  and   associated  files   and  procedures
    reorganised. VEDSUN  and VEDWINSUN are  now in popvedlib;  all other
    files  are in  $usepop/pop/lib/sun  ("popsunlib").  LIB *  POPSUNLIB
    added, which ensures that popsunlib  is in the users popliblist. See
    HELP * VEDSUN, *VEDWINSUN. Previous version of VEDSUN is now
    LIB * OLDVEDSUN, with HELP * OLDVEDSUN

Mar  6 (John Williams)
    --- Some minor bug fixes:
         IDENTTYPE now returns 0 for an  untyped identifier, not "full".
         SYSPROTECT no longer mishaps if applied to a system identifier.
         SYSSYNONYM now checks that its first argument is an identifier.
         Also, synonyms are now 'local' to the current section.

    --- Most procedures that deal with identifiers (at either compile or
    run  time) will  now accept  lisp symbols  as well.

Mar 6  (Mark Rubinstein)
    --- LIBRARIES. One of the changes introduced to POPLOG since Version
    11 is  that some  considerable work  has gone  into sorting  out the
    libraries. As a result some (although  I am sure not all) files that
    are only  relevant to the Sussex  site or Sussex teaching  have been
    removed  from the  publicly distributed  libraries and  many of  the
    files  that are  only relevant  to particular  operating systems  or
    configurations will only appear on those versions.

    All  libraries  should  now   have  a  standard  (commented)  header
    containing information about  the file. The slot  marked "file" will
    usually    have   a    unix-type   path    specification   beginning
    $usepop/master/C.???/...  The  part  following   'C.'  gives  us  an
    indication of which machines the file  is relevant to. For most this
    will be C.all but some may for  example be C.unix or C.vms. The rest
    of  the  path  should  specify  where the  file  lives  relative  to
    '$usepop/pop'.  So  for  example  the  file  which  bears  the  path
    '$usepop/master/C.all/lib/auto/record.p'   should    be   the   file
    '$usepop/pop/lib/auto/record.p' on your system.

    --- POP-2.  Another change for POP-11  is a break from  its ancestor
    POP-2. Previously  effort was made  for POP-11 to be  compatible and
    many autoloadable libraries provided synonyms for POP-2 names. These
    have all  been removed  from the  autoloadable library  and replaced
    with the  single compatibility library  LIB * POP2. For  details see
    HELP * POP2.  If you are in  the habit of using  POP-2 procedures or
    names then  you should load this  in your 'init.p' file  (see HELP *
    INITIAL).

    --- NEW LIBRARIES include an object-oriented programming environment
    loosely based on Zetalisp flavors (see TEACH * FLAVOUR for details).
    There is  a new  ved configuration  for bbc  computers with  a vt100
    emulation  (see HELP  * BBCVT100).  LIB  * CONTEXT  by Allan  Ramsay
    allows  the saving  of  the  state of  chosen  variables within  set
    contexts. See HELP * CONTEXT.

Mar 4  (John Gibson)
    --- Version 11.2. The Poplog virtual machine and the POP-11 compiler
    now support lexically-scoped non-local jumps.  That is, a -goto- (or
    -go_on-) statement in a POP-11 procedure can reference a label which
    is anywhere within that procedure or a lexically enclosing one, e.g.

            define ismember(item, list);
                applist(list, procedure(x);
                                  if x = item then goto found endif
                              endprocedure);
                return(false);
            found:
                return(true)
            enddefine;

    Similarily, all jump-type virtual  machine instructions (GOTO, IFSO,
    IFNOT, AND, OR, GO_ON) can take labels that are anywhere in the nest
    of procedures for which code is being planted (including the current
    batch of execute-level code). See REF *VMCODE, and in particular the
    section  'Implementation of  Non-Local  Jumps' for  a discussion  of
    efficiency issues.

Feb 20 (Mark Rubinstein)
    --- LIB  PROFILE will  now accept  input from the  same line  as the
    command when  run from  LMR in  VED. It will  also print  results in
    floating point format instead of as ratios. See HELP * PROFILE.

Feb 19 (Aaron Sloman)
    --- VED fixed so  that it will cope with situation  where a file has
    been edited  in the current  directory, then directory  changed, and
    VED  invoked with  a full  path-name for  the file,  or the  reverse
    situation.   This   involved   changing   VEDPRESENT   (see   HELP *
    VEDPROCS/vedpresent) to detect such situations.

Feb 13 (Mark Rubinstein)
    --- VED_SS and  VED_WW which allow caseless searching  in ved, moved
    from local library  to public. See HELP * VED_SS,  *VED_WW, and also
    HELP * VEDPROCS/vedtestclsearch, *VEDPROCS/vedcllocate.

Feb 11 (Mark Rubinstein)
    --- New procedure *EXPANDLIST will expand a dynamic list and turn it
    into a static list.

    ---  SYSSORT, COPYTREE,  NCREV, NCDELETE  and FLATTEN  all now  work
    properly   with  dynamic   lists.   FAST_NCREV,  FAST_NCDELETE   and
    FAST_FLATTEN will not.

Feb 4  (Mark Rubinstein)
    --- SYSTMPFILE  fixed to use  SYS_>< and  so prevent funny  names if
    POP_PR_QUOTES is true.

Jan 31 (John Williams)
    --- Aled  Morris' Cifer terminal  conversion, LIB *VEDCIFER,  is now
    available. This downloads code into the Cifer to make it support VED
    in a much  improved fashion. See HELP *VEDCIFER,  CIFERKEYS for more
    details.


Jan 27 (Aaron Sloman)
    --- New  directory $popdatalib  = $usepop/pop/lib/data  now contains
    data for  library programs,  e.g. edgepic,  grammar1. Some  of these
    used to be in other directories.

    --- POPUSESLIST altered to include $popdatalib.

Jan 26 (Aaron Sloman)
    ---  VED_LMR, <ENTER>  L  and  <ENTER> L1  changed  so that  warning
    messages inserted in file when VEDLMR_PRINT_IN_FILE is TRUE are also
    shown on the screen. See HELP * VEDVARS /vedlmr_print_in_file

    --- LIB  TIME altered so  as to give  more accurate results,  and to
    work with 'load marked range' in VED.

Jan 26 (Mark Rubinstein)
    --- Procedures attached to <ESC> / and <ESC> \ now give sensible ved
    errors if used  before any searching has been  done. Previously they
    mishapped.

Jan 26 (John Williams)
    --- The procedure CHARTYPE has  been renamed VEDCHARTYPE, and is now
    redefinable. It controls the recognition of text item boundaries for
    VED searching,  and the  WORDLEFT and WORDRIGHT  keys. The  old name
    CHARTYPE is still available as a synonym.

Jan 26 (John Williams)
    ---  The library  procedure  LAST  has been  extended  to cope  with
    dynamic lists,  all vector  classes, and words.  See HELP  *LAST for
    details.

Jan 26 (Mark Rubinstein)
    ---  ISSUBSTRING_LIM -  fixed. Previously  'start_lim' arguments  of
    false meant that the procedure always returned false.

    ---  <ENTER> GS  and  GSR  if given  no  arguments  will redraw  the
    previous search  and substitute  strings with  the delimiter  on the
    end. Previously there could be problems if the last character of the
    substitute string was a space.

    --- VVEDGOTOPLACE -  minor bug fixed. Problems occurred  when it was
    an illegal search string.

    --- VEDWIGGLE  is now  sensitive to  a new  variable VEDWIGGLETIMES.
    Default is  5, it can  be set  to a larger  number to slow  down the
    wiggling on fast terminals.

    ---  VED_FILL and  VED_JJ  no longer  mishap  if VEDLEFTMARGIN  is a
    procedure.

    ---  DATAFILE can  now record  all items,  including those  with non
    printing characters (e.g. SPACE).

Jan 20 (John Williams)
    ---  PRWARNING is  no longer  locally bound  by VED_LMR  and related
    procedures that effect compilation in VED.

Jan 20 (Mark Rubinstein)
    ---  RECORDCLASS  and  VECTORCLASS   macros  are  now  sensitive  to
    sections. They make  a new key if the identifiers  are not available
    in the current section.


Jan 19 (John Gibson)
    --- POPLOG Version 11.1 supports the  full range of number types and
    numerical  procedures  specified by  Common  LISP.  The changes  are
    summarised  here;  REF  *  NUMBERS  (which  replaces  REF  *  ARITH)
    describes the new system in full.
        Listed by dataword,  the system now has the  six distinct number
    types:

        integer     }
        biginteger  }   rational numbers
        ratio       }

        decimal     }   floating-point numbers
        ddecimal    }

        complex

    The major change that will affect existing programs is that dividing
    one integer  by another with  / now  produces a ratio  rather than a
    floating-point (except if the division  is exact, when the result is
    an  integer  as  before).  Because you  really  want  floating-point
    results (or  because you  find ratio arithmetic  too slow),  you may
    find it  necessary to  replace some  integer constant  divisors with
    floating-point values. Otherwise,  the changes are upward-compatible
    with previous versions.
        As well as being constructed by  the / operator, ratios can also
    be read  in as literals by  the itemiser. While the  obvious way for
    ratios to print  out would have been <int>/<int>,  this format would
    have  been unsuitable  for the  itemiser  (owing to  the problem  of
    ambiguity  with POP-11  operator syntax).  It was  therefore decided
    that ratios should both print and read as <int>_/<int>, e.g.

                2 / 3 =>                    ;;; evaluated ratio
                ** 2_/3
                [1_/2  2_/3  -3_/4] =>      ;;; literal ratios in a list
                ** [1_/2  2_/3  -3_/4]

    A similar  format has  been adopted for  complex numbers:  since the
    binary  operators  for  constructing  these   are  +:  and  -:,  the
    read/print syntax is the same with an additional '_', e.g.

                2 +: 3 =>                                  ;;; evaluated
                ** 2_+:3
                [1_+:2  2_-:3  -3.0_+:4.0  2_/3_-:3_/4] =>  ;;; literals
                ** [1_+:2  2_-:3  -3.0_+:4.0  2_/3_-:3_/4]

    See REF * ITEMISE for full details.

    Because  the  system  now   has  full  complex  arithmetic,  certain
    operations  that used  to give  a mishap  (e.g. -sqrt-  applied to a
    negative number) will now produce a complex result.

    There are quite a few new procedures, listed below:

        predicates
        ---------
            isratio
            isrational
            isreal
            iscomplex

        integer & rational arithmetic
        -----------------------------
            gcd_n
            lcm_n
            destratio
            numerator               [autoloadable]
            denominator             [autoloadable]

        complex operations
        ------------------
            +:                      [operator]
            -:                      [operator]
            unary_+:
            unary_-:
            conjugate
            destcomplex
            realpart                [autoloadable]
            imagpart                [autoloadable]

        trigonometric
        -------------
            phase                   [autoloadable]
            cis                     [autoloadable]
            sinh
            cosh
            tanh
            arcsinh
            arccosh
            arctanh

        bitwise integer procedures
        --------------------------
            &&/=_0                  [operator]
            &&=_0                   [operator]
            testbit
            integer_leastbit
            integer_length
            integer_bitcount
            integer_field

        random numbers
        --------------
            random0

        floating-point utilities
        ------------------------
            float_decode
            float_scale
            float_sign
            float_digits            [autoloadable]
            float_precision         [autoloadable]
            pop_float_radix         [autoloadable constant]
            lib float_parameters    [library]

        general
        -------
            number_coerce


    In addition, the existing library procedures

            random (+ ranseed)
            round
            sign

    have been moved into the system.


Jan 19 (Aaron Sloman)
    --- Undocumented  use of characters .,#|  in place of /  for forward
    searching in VED removed. (Relic of wrong decision in 1981).

    ---  VED_BACKSEARCH (<ENTER>  \ and  <ESC> \)  fixed to  find latest
    acceptable occurrence in the line, instead of first only.

    --- VED_DO provided for multiple commands on VED command line:
        <ENTER>  do<c>command1<c>command2<c>command3  ...
    Commands  are separated  by any  non-space delimeter  character <c>.
    E.g. to search for FOOO and move down two lines:
        <ENTER> do;/FOO;ml 2
    See HELP * VEDCOMMS/ved_do  and  LIB * VED_DO

    --- New utility  SYSGETUSERNAME(<login name>) -> <user name | false>
    added to public library. UNIX ONLY.

Jan 19 (John Williams)
    ---  Bug in  VED_LMR that  previously caused  POP_CHAROUT_COL to  be
    VEDCOLUMN when it shouldn't has been fixed. Output into current file
    should now work.

Jan 19 (Aaron Sloman)
    ---  Updated documentation:
            HELP *DATASTRUCTURES
            HELP *VEDCOMMS
            HELP *VEDPROCS
            HELP *VEDSYSFILE
            HELP *VEDVARS

    --- VED procedures now check whether VEDSCREENWIDTH has altered, and
    if so change local structures automatically.
    This  means that LIB * VED_LL can be simplified.

    --- VEDERROR altered to call MISHAP unless 'iscaller(vedprocess)'.

    --- VED  and VED_NAME  altered so that  VEDERROR rather  than MISHAP
    called if given a file in non-existent or protected directory.

    --- Bug in VEDBUFFEREXTEND fixed.  Now, if appropriate, it saves the
    new buffer in the current  file structure. Previously, changes could
    be lost as as a result of inadvertently hitting QUIT key, or exiting
    from VEDEDITOR, e.g. by calling SETPOP.

    --- VEDSEARCHLIST,  default [], is  now used  by VED and  VED_VED to
    search for user  files, just as VEDHELPLIST is used  by HELP. It can
    now be assigned to by users, e.g. in VEDINIT.P. (See HELP * INITIAL)
    VEDSEARCHLIST may  consist of  strings naming directories,  or lists
    whose  first element  is a  directory name,  as explained  in HELP *
    SYSSEARCHPATH,  * VEDGETLIBFILENAME,  * VEDSYSFILE.  As a  corollary
    various VED procedures can now take a list instead of a string for a
    file  name, e.g.  VEDEDITOR, VEDREADFILE,  VEDGETFILE, VEDOPEN.  The
    first element  of the list is  used as file name,  and the remaining
    elements used to initialise global variables.

    VED_LMR  has  been  adjusted  to  take  account  of  the  fact  that
    VEDSEARCHLIST may have to be used to fined the output file.

    VEDPRESENT has been altered  to use VEDSEARCHLIST, consistently with
    VED_VED.

    If VEDSEARCHLIST is FALSE or [],  behaviour of VED should be exactly
    as before.

    --- * VEDOPEN can optionally be given TRUE as its final argument. In
    that  case the  new file-structure  returned will  also be  put onto
    VEDBUFFERLIST,   at  the   end.  (Previously   available,  but   not
    documented.)

Jan 19 (Mark Rubinstein)
    --- VED_F altered so that it  can cope with definitions of lvars and
    lconstant procedures and  also improved so that it  never gets stuck
    in a loop or fails to find definitions.

    ---  VMS  POPLOG. SYSFILEOK  altered  so  that  the string  ']['  is
    eliminated  from file  specifications.  For example  if disk$a  is a
    logical name for disk$real[subdirectory.] then:

        sysfileok('disk$a:[user.mydir]file.p') =>
        ** disk$real:[subdirectory.user.mydir]file.p

    ---  VEDFILESELECT  moved into  the  system.  It has  been  slightly
    changed to show information more quickly if  it can do so and if you
    have not typed ahead. It is also more sensitive to window and screen
    sizes.

    --- LIB VED_GO now removed. VEDFILESELECT is more sophisticated.

    --- SystemV  UNIX POPLOG.  LIB TERMIO  installed for  handling ioctl
    requests as specified  by Unix manual termio(7). See  HELP * TERMIO.
    Corresponds to  HELP * IOCTL and  the 4 IOCTL libraries  for Berkely
    unix.

    --- VEDREADLINE removed from the  system. It is still available as a
    library  but it  should  not be  necessary as  in  almost all  cases
    readline now works better. See HELP * READLINE, * VEDREADLINE.

    ---  TRACE  will now  accept  <termin>  as well  as  ";"  as end  of
    procedures  to trace.  It  now prints  the exit  and  entry call  of
    procedures  using the  name by  which they  were traced  (previously
    closures  printed  as  "false").  -trace- no  longer  constructs  an
    updater if the untraced procedure didn't have one and a problem with
    people unwittingly redefining traced  procedures by another name has
    now been fixed (by John Williams).

    --- LOAD, if given no name will  only load the last VEDed file if it
    exists and is a POP-11 file (has the '.p' file extension).

    --- ISSUBSTRING will  no longer mishap if the index  is greater than
    the length of the string. It will just return false.

    --- ISSUBSTRING_LIM a version of ISSUBSTRING which allows you to set
    limits beyond which  the substring should not be  searched for. This
    can be efficient particularly if you are looking for a match only at
    the beginning of a string. See HELP * ISSUBSTRING_LIM.

Jan 19 (Andrew Law)
    --- The  procedure VEDPREVIOUSHELP for finding  previous asterisks
    in  a  file   (set  to  <ESC>  u)  has  been   added  to  complement
    VEDNEXTHELP.
    See HELP * VEDPROCS /vedprevioushelp and HELP * VEDGETSYSFILE.

Jan 17 (Mark Rubinstein)
    ---  SYSTMPFILE documented in REF * SYSUTIL /SYSTMPFILE.

Jan  9 1986 (Mark Rubinstein)
    ---  SYSFILEMODE a  procedure  (with an  updater)  for accessing  or
    changing the mode (protection) flag for a file.
    See  HELP * SYSFILEMODE.

Dec  3 1985 (Mark Rubinstein)
    --- GENSYM reimplemented as a  closure on a property (previously the
    property  could  not  be  accessed  from  the  procedure).  Two  new
    autoloadable  features  are  also provided  CLEARGENSYMPROPERTY  and
    APPGENSYMPROPERTY. See HELP * GENSYM for details.

Nov 25 (Mark Rubinstein)
    --- HELP  * CLOCK, a brief  summary of procedures which  make use of
    the system clock.

Nov 14 (Mark Rubinstein)
    --- CHARIN_TIMEOUT  has  been  reimplemented  using POP_TIMEOUT  and
    POP_TIMEOUT_SECS  in order  not  to  clash with  the  timer used  by
    SYSSETTIMER on  VMS machines.  This means  that arguments  (given in
    hundredths of a second) are rounded to the nearest second.
    See HELP * CHARIN_TIMEOUT.

Nov 3  (Aaron Sloman)
    --- The  command 'umask  0' has  been moved from  the public  to the
    local login command file. Users  elsewhere have complained that this
    has over-ridden local protection defaults.

Oct 28 (Aaron Sloman)
    --- Search Bug fixed  in VED. It used to get  into infinite loops if
    search  started  on  final  line, looking  for  non-existent  string
    starting at beginning of line.

Oct 18 (Mark Rubinstein)
    --- SPRINTF library  for constructing formatted strings  of the kind
    printed by PRINTF moved from local library. See HELP * SPRINTF.

Oct 22 (Aaron Sloman)
    --- HELP * NEWOBJ extended.

Oct  6 (John Williams)
    --- The  library procedures UPPERTOLOWER and  LOWERTOUPPER have been
    made more efficient. Please note that they no longer signal an error
    if given a non-numeric argument.

Oct 6 (Aaron Sloman)
    --- Bugs  in VED due to  vvedlinesize not always being  updated when
    vedline is changed, e.g. after calling VED_D, now removed.

    --- HELP  * PARAMETERS was not  quite correct in its  description of
    the  default $popsavepath.  Now corrected  to mention  $poplocalbin.
    Several  command  files for  creating  saved  images have  now  been
    changed to store them in $poplocalbin.

Oct  4 (Mark Rubinstein)
    --- Local ved_print tidied up and moved into the system.
    See HELP * VED_PRINT.

Sep 24 (Mark Rubinstein)
    --- REF * PROPS updated to refer to *NEWANYPROPERTY.

Sep 16 (Mark Rubinstein)
    --- Library  search lists VEDHELPLIST, VEDTEACHLIST,  VEDREFLIST and
    VEDDOCLIST  have had  their formats  changed. Instead  of containing
    only strings and  procedures they can now also  contain lists, where
    the first  element is a string  (the directory as before)  and there
    can optionally be  up to two other elements, a  word (indicating the
    category  of  the  files  in  the  directory  e.g.  HELP  -  set  to
    VEDFILEPROPS) and a procedure (to  be used as the compiler activated
    by VED_LMR, VED_L etc - set to POPCOMPILER).

    This is used by the new procedure * SYSSEARCHPATH, in order to solve
    a number  of long-standing  problems involving  interactions between
    sub-systems. User programs  using these search-lists may  have to be
    modified. We apologise for the incovenience.

    --- Various libraries (e.g. VED_H)  that used VEDHELPLIST altered to
    cope with new alternative format (see HELP * SYSSEARCHPATH).

Sep 15 (Aaron Sloman)
    --- HELP  * STRINGS  updated, including information  about arbitrary
    8-bit characters in strings.

Sep 13 (Roger Evans)
    --- COPYDATA added:  an autoloadable utility which does  a full copy
    of  a  data  structure   (including  substructures  etc).  See  HELP
    *COPYDATA for details.

Sep 4 (John Gibson)
    --- Bigintegers are  now integrated properly with  record and vector
    classes. Integer fields in records and vectors which are wide enough
    to hold integers  greater than the maximum simple  pop integer (i.e.
    more than 29  bits unsigned, or more than 30  bits signed), will now
    accept or produce bigintegers when appropriate.

    --- A long-standing problem with POP-11 list and vector constructors
    (i.e. [...] and  {...} ) containing a large  number of individually-
    specified items  has been cured.  Such lists or vectors  could cause
    the system to crash under certain conditions.

    --- A  bug in the  run-time assembler  for 68000 POPLOG  systems has
    been  fixed. The  symptom  was that  certain  very large  procedures
    produced  by  the  PROLOG  compiler did  not  execute  properly  and
    corrupted memory, causing random crashes.

    --- The  POP-11 "load" macro has  been moved out of  the library and
    into the system.

Sep 4 (Mark Rubinstein)
    --- *VEDGETLIBFILENAME no longer calls *VEDSETUP.

*********** For news prior to Version 12 see HELP * NEWS.V11 ***********

-----<Copyright University of Sussex 1986.  All rights reserved.>-------
