On some platforms GHC supports building Haskell code into shared
libraries. Shared libraries are also sometimes known as dynamic
libraries, in particular on Windows they are referred to as
dynamic link libraries (DLLs). Shared libraries allow a single
instance of some pre-compiled code to be shared between several
programs. In contrast, with static linking the code is copied
into each program. Using shared libraries can thus save disk
space. They also allow a single copy of code to be shared in
memory between several programs that use it. Shared libraries
are often used as a way of structuring large projects,
especially where different parts are written in different
programming languages. Shared libraries are also commonly used
as a plugin mechanism by various applications. This is
particularly common on Windows using COM. In GHC version 6.12
building shared libraries is supported for Linux (on x86 and
x86-64 architectures). GHC version 7.0 adds support on Windows
(see Section 11.6, “Building and using Win32