safe-plugins

A small wrapper over hs-plugins to allow loading safe plugins

Latest on Hackage:0.1

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed by IlyaPortnov
Maintained by [email protected]

This library allows you to load plugins, just as hs-plugins do. But under some circumstances, you do not want to allow plugins to do everything they want. What about plugin which executes `rm -rf /*' ? In Haskell, you can limit plugin's abilities just by not allowing it to import `not safe' modules (System.IO.Unsafe, etc). With this library, you specify a list of modules that plugin should be forced to import (i.e., some plugin API module), and a list of module that you want to allow plugin to import (some `surely safe' modules). Plugin cannot import any other modules. Moreover, you can specify some language extensions, for example, NoImplicitPrelude.