def loadWorld(worldName, store):
    """
    Load an imaginary world from a file.

    The specified file should be a Python file defining a global callable named
    C{world}, taking an axiom L{Store} object and returning an
    L{ImaginaryWorld}.  This world (and its attendant L{Store}) should contain
    only a single L{Actor} instance, which will be used for the player
    character.

    @param worldName: The path name to a Python file containing a world.
    @type worldName: L{str}

    @param store: The axiom data store to read the world into.
    @type store: L{Store}
    """
    with open(worldName, "rb") as f:
        codeobj = compile(f.read(), worldName, "exec")
        namespace = {}
        eval(codeobj, namespace, namespace)
        return namespace['world'](store)