Work in progress
----------------

The compiler contains some code for the following features,
which are not yet completed:

* We have added support for dynamic link libraries (DLLs) on Windows.
  This is not yet enabled by default because it has not yet been tested
  properly.

* There is a new `--generate-bytecode' option --
  but the bytecode interpreter isn't working yet.

* There is a new `--generate-prolog' option
  which does not work yet.

* There is a new `--optimize-constructor-last-call' option
  which identifies opportunities for LCO where a call
  is followed only by some constructor invocations.
  However, these opportunities are not exploited yet.

* We now allow programmers to give names to the arguments of constructor
  function symbols.  (Disabled, due to lack of a suitable operator.)

* There are new options, `--make-transitive-optimization-interface' and 
  `--transitive-intermodule-optimization' which allow the compiler to
  create `<module>.trans_opt' files.  These files are similar to the
  `<module>.opt' files, except `<module>.trans_opt' files may depend on
  the information in other `<module>.trans_opt' files.  Currently the
  files are correctly created and read in, but the dependencies are not
  correctly maintained, so the information in the `<module>.trans_opt'
  files may be incorrect.  For further details of what needs to be done,
  see the beginning of the `trans_opt.m' file in the compiler directory.

We also have some code that goes at least some part of the way towards
implementing the features below.   However, for these features, the
code has not yet been committed and thus is not part of the standard
distribution.

* Tabling/memoing of det and semidet predicates.

* Support for Haskell-style type classes.

* Support for heap profiling.
