kjosib / booze-tools

Booze Tools will become the complete programming-language development workbench, all written in Python 3.9 (for now).
MIT License
14 stars 1 forks source link

Reimagine the runtime "simple cases" #26

Closed kjosib closed 4 years ago

kjosib commented 4 years ago

Right now, "the simple case" isn't all that simple: everything is done with exceptions, and catching exceptions does not compose functionally.

I'd like to be able to thing about error handling strategy ONCE (per general style of application) rather than having to try this, except these three other things, in every client application.

You might want to have some long-running process parse bits of text in an event handler. In that case a language breakage should probably call a method on the application driver (being application-specific).

I think the right answer is to establish that a driver object is a proper object, and not just a callable. Then, selection of an error-handling strategy is basically an act of composition, and simple cases are well within reach.

kjosib commented 4 years ago

Merge with issue #25