include "sh.m";
Command: module
{
PATH: con "/dis/sh.dis";
init: fn(ctxt: ref Draw->Context, argv: list of string);
};
Any module (not just the Inferno shell) can launch a command-style module (specified by at run time by filename, the second operand to Limbo's load operator) by using this interface.
Example
include "sh.m"; cmd:= load Command filename; define ctxt construct argv with module name at top of the list cmd->init(ctxt, argv);