These addenda describe extensions that have been standardized across haskell implementations.
The Haskell Foreign Function Interface, as described in the FFI addendum is implemented except for the following limitations:
Only the ccall
, stdcall
and
dotnet
calling conventions are supported.
All others are flagged as errors.
foreign export
is not implemented.
foreign import "wrapper"
is only implemented for the
x86, PowerPC and Sparc architectures and has been most thoroughly tested on
Windows and Linux using gcc.
Modules containing foreign
declarations must be compiled
with ffihugs before use (see Section 4.2).
The
Haskell Hierarchical Namespace Extension
allows dots in module names, e.g. System.IO.Error
,
creating a hierarchical module namespace.
Hugs has supported this since the December 2001 release.
When searching for the source file corresponding to a hierarchical name,
Hugs replaces the dots with slashes.