# Plugin interface

Nick Ingolia (ingolia@mit.edu)
Tue, 15 Jul 1997 19:23:46 EDT

- Messages sorted by:[ date ][ thread ][ subject ][ author ]

    Hello...

    Steve Caron and I are the authors and maintainers of the most current
    Macintosh port of the MOO server, MacGoesMOO.  For the past few
    releases, we have provided support for plugin modules in this port.
    We and others thought it might be good to develop a standard for
    plug-in modules.  This would allow a variety of developers to use
    architecture-specific features allowing plug-in modules to be loaded
    while maintaining source-level compatibility among plug-ins.

    The MacGoesMOO plug-in interface is currently very simple.  The server
    loads all files in a Plugins folder and calls an initialization
    function on them.  The plug-in is linked against the server such that
    it has access to all non-static server functions (particularly
    register_function()).  A built-in function returns a list of all
    plug-ins loaded.

    Some enhancements that might make this system adaptable to a wider
    variety of plug-ins include the ability to "register" a function to be
    called in the server main loop and the ability to explicitly load a
    plug-in module after server-startup by using a built-in function.
    Another possibility would be to create a configuration file similar to
    the configuration files that fill /etc on UNIX machines, allowing
    system-specific information (such as root directories for FUP) to be
    specified at load-time.

    Thank you,

    --Nick Ingolia
    ingolia@mit.edu