previous up next     contents index
Next: Starting MrEd on the Up: Overview Previous: Overview

Starting Up

  MrEd starts up with the following sequence:

If you are writing your own MrEd application, you will need to redefine mred:make-application@. It should return a signed unit matching the mred:application^ signature. It should import identifiers defined in mred^ and in mzlib:core^. mred^ contains all of the system, and mred:application^ contains two identifiers, console and eval-string. console should be a frame which will be used as the application's main frame. If it is not a frame, MrEd will create a frame with only a quit button to be the application's main frame. eval-string should take one argument, a string, and evaluate it. If your application does not include an evaluator eval-string can just return (void).

Also, you may want to redefine mred:make-invokable-unit. mred:make-invokable-unit builds a signed compound unit which links together the system and the result of mred:make-application@. If your applicatoin needs to change the linking interface, redefine mred:make-invokable-unit. See mrsystem.ss in the MrEd system directory for an example.

If you want to make a mred application without using units, pass -nu on the command line before loading your files. If you use -nu, MrEd will call mred:startup with no arguments and use the value that mred:startup returns as the default application frame.

  If the system is not found, or if there is an uncaught error while the system is loaded, then the load is aborted and a plain text editing window is opened.




previous up next     contents index
Next: Starting MrEd on the Up: Overview Previous: Overview

PLT