document the freewheeling protocol

[?]
May 1, 2023, 7:00 AM
7O2VSF5YF7OKEVU4QZCUEI5C2IK2GORP32F3HNPO6SL6PZD2GLVAC

Dependencies

  • [2] EUWHJ7JJ include a brief reference enabling many useful apps

Change contents

  • edit in reference.md at line 243
    [2.11220]
    ### The freewheeling protocol with the driver
    Freewheeling apps currently respond to the following commands from the driver:
    * `QUIT` -- tells the current app to quit
    * `RESTART` -- tells the current app to reinitialize after saving any settings
    * `MANIFEST` -- requests a list of definitions the app knows about. The
    app returns only definitions that were created using the freewheeling
    framework and so can be modified and errors recovered from.
    * `DEFAULT_MAP` -- requests a default map of the code. Everyone is free to
    create their own "memory palace", but this is usually a good default to
    start with.
    * `GET <name>` -- requests the source code for definition `<name>`.
    * `GET* <name> ...` -- requests source code for multiple definitions.
    * `DELETE <name>` -- requests deletion of the definition `<name>`. Only
    permitted for definitions created using the freewheeling framework, not
    lower-level definitions.
    * anything else -- is considered a new definition to be loaded into the
    app.
    Commands may cause an error response, which is sent back to the driver.
    In addition, any _run-time_ errors caused as the app executes are also sent
    back to the driver. These don't need an explicit command from the driver.