_N_e_w_ _s_y_s_t_e_m_ _f_e_a_t_u_r_e_s

The compiler's treatment of undefined names has been modified - they are
now  reported  with  line  numbers, as encountered during the typecheck,
instead of merely being listed at the end of compilation.   This  is  in
response  to  the  observation  that  many  undefined names are actually
spelling mistakes.  In order to avoid an excessive number  of  warnings,
if  there  are  mutiple occurrences of the same undefined name, only the
first is reported.

The compiler now reports definitions included under a  `where'  and  not
used,  directly  or  indirectly,  in the body of the where, as redundant
(this is a warning, not an error).

Two new commands are allowed in a Miranda session
	/strictif
	/nostrictif
To make the compiler treat `if' after  the  guard  comma  as  compulsory
(/strictif), or optional.

The following additional flags are now accepted by the `mira' program
	-list
	-nolist
        -sources
	-strictif
	-nostrictif
	-version
See under `Flags etc' in UNIX/Miranda system interface.

`mira  -exports'  now  accepts  multiple file names.  Example, the shell
command `mira -exports *.m' gives the export profiles of all the Miranda
scripts  in  the  current  directory.

The `!' escape in mira  (and  in  the  manual  system)  now  shows  more
intelligence  about  which  shell  to use.  If your login shell is `csh'
(normal for users of Berkeley UNIX)  it  uses  that  rather  than  `sh'.

All Miranda commands involving filenames now use C-shell conventions  in
interpreting  filenames beginning with `~'.  This also works for library
directives (%insert, %include).

[Note: the `~' convention does not work in Miranda systems running under
system 5.]

The convention (in library  directives)  that  filenames  surrounded  by
angle  brackets  are relative to the miralib directory now also works in
Miranda commands.  Specifically `/e', `/f' and `/cd' now understand this
convention.  Example the command
	/f  <ex/primes>
in  a Miranda session selects for the current script the file `primes.m'
from the directory of examples `ex', stored under the miralib directory.

The exit status of a Miranda process (other than  one  which  terminates
with an explicit call to Exit) is now 1 if the process terminates with a
runtime error, 0 otherwise.  This is a change of policy, to make it more
convenient  to  use  programs  written  in  Miranda in shell scripts and
makefiles. (Formerly exit status was always 0, unless Exit called.)

A bug in the lex analyser causing it to reject with an OFFSIDE  error  a
Miranda  script  whose  last  line  ends  in  EOF  rather than a newline
character, has been  fixed.   This  was  a  nuisance  for  people  whose
installed editor is emacs, which does not automatically add a newline to
the last line of a file.

One other change has been made for the benefit of  people  using  emacs.
If  the environment variable RECHECKMIRA is set, the mira program checks
to see if any  relevant  source  file  has  been  updated  before  every
interaction  with  the user, instead of only after /edit commands.  This
is useful if an editor window is being kept open  permanently  during  a
Miranda session.

There  is  a  new  manual  section  on  environment   variables   (under
UNIX/Miranda system interface).

