Skip to content
Snippets Groups Projects
Commit dec10771 authored by Simon Marlow's avatar Simon Marlow
Browse files

[project @ 1997-11-25 12:44:54 by simonm]

literatize and add a few forgotten things.
parent 3094cd6c
No related merge requests found
* unboxed the state in ST and IO, and specialised IO (it is no longer built
Changes made since 2.08:
\begin{itemize}
\item fixed type-synonym-arity bug in the typechecker.
\item fixed overloaded-constructor-argument bug in the typechecker.
\item fix off-by-one error in PackedString:filterPS.
\item fixed getCurrentDirectory.
\item fixed space-leak bug to do with polymorphic recursion and overloading.
\item fixed lit-deatify that was core dumping on Linux.
\item some fixes to the native code generator for i386.
\item unboxed the state in ST and IO, and specialised IO (it is no longer built
on top of ST).
* reversed the sense of -fwarn-{overlapped,incomplete}-patterns. The driver
\item reversed the sense of -fwarn-{overlapped,incomplete}-patterns. The driver
now has to have the flag to provide the warning.
* added the -Wnot, -W, and -Wall options. Set up a default set of warnings,
\item added -fwarn-missing-methods
\item added the -Wnot, -W, and -Wall options. Set up a default set of warnings,
namely -fwarn-{overlapped,incomplete}-patterns.
* Added -fwarn-duplicate-exports warning to check for duplicates in
\item Added -fwarn-duplicate-exports warning to check for duplicates in
export lists. Included in default warning set.
* Renamed SampleVar.{write,read}Sample to SampleVar.{write,read}SampleVar
\item Renamed SampleVar.{write,read}Sample to SampleVar.{write,read}SampleVar
* new mkdependHS options: -W disables warnings of duplicate interface
\item new mkdependHS options: -W disables warnings of duplicate interface
files found along the import path. --include-prelude *will* generate
dependencies on Prelude + any prelude/syslib .hi files used.
\item removed the @PrimIO@ type. For a limited time only, @PrimIO@
will be available from @GlaExts@ as a synonym for @IO@.
\item changed the type of @_ccall_@s to return @(IO a)@.
\item renamed @mainPrimIO@ to @mainIO@, as it now has type @IO ()@.
\item fixed the semantics of the @-i@ flag to @mkdependHS@ to be the
same as GHC.
\item fix panic when a type constructor is used as a class.
\item don't arbitrarily truncate cost centre names in profiling information.
\end{itemize}
In 2.09, we've made extensive changes to the libraries that provide
access to various GHC extensions. Many of these extensions are now
provided by Hugs, and as a result we are now using a common set of
extension libraries.
Briefly, the changes are as follows (for the definition of the new
libraries, see the section on GHC/Hugs libraries in the User Guide).
\begin{itemize}
\item Addr moved out of Foreign and into its own module.
\item MutVar module disappeared, IOExts now exports IORefs and associated
operations.
\item The @CCallable@ and @CReturnable@ classes now have their own
module, @CCall@. You only need to import this module to provide a
new instance of one of these classes.
\item A new module @IOExts@ provides extensions to the @IO@ monad,
including @unsafePerformIO@, @unsafeInterleaveIO@, @IORef@s (mutable
variables), and @IOArray@s (mutable arrays).
\item Importing @ST@ is now the official way to get access to the @ST@
monad. This module also supports @STRef@s (mutable variables) and
@STArray@s (mutable arrays).
\item A new module @LazyST@ provides an identical interface to @ST@
except that the underlying implementation of the monad is lazy. Be
careful about mixing these two in the same program.
\item The new module @Bits@ provides a class of bit operations. The
modules @Int@ and @Word@ provide signed and unsiged integer types
(respectively) of varying sizes, all of which support bit
operations.
\item Added @Bits@, @Int@, @Word@ (and a few new primops over words).
\item The @GlaExts@ module will provide Glasgow-only extensions. For
now, we've kept the old interface for compatibility, but beware that
this is deprecated and the relevant extension libraries should be
imported explicitly.
\item Several changes to the libraries in @lib/ghc@ - see the User
Guide for details.
\end{itemize}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment