hs-plugins
Dynamically Loaded Haskell Modules

Don Stewart

August 20, 2009

Download version 1.0

hs-plugins is a library for loading code written in Haskell into an application at runtime, in the form of plugins. It also provides a mechanism for (re-)compiling Haskell source at runtime. Thirdly, a combination of runtime compilation and dynamic loading provides a set of eval functions– a form of runtime metaprogramming. Values exported by Haskell plugins are transparently available to Haskell host applications, and bindings exist to use Haskell dynamically in C, Perl and Objective C programs. hs-plugins requires GHC 6.4 or later.

Contents

    1  Download

    2  History

    3  Acknowledgements

    4  Overview

    5  Dynamic Loader

    6  Compilation Manager

    7  Eval.Haskell
        7.1  Utilities for use with eval

    8  RTS Binding

    9  Dynamic Loader Implementation

    10  Compilation Manager Implementation

    11  An Example

    12  Multiple Plugins

    A  License

    B  Portability

    C  A Haskell Interpreter using Plugins

Last modified: Sunday, March 15th, 2009 8:14:39pm