gelisam / klister

an implementation of stuck macros
BSD 3-Clause "New" or "Revised" License
128 stars 11 forks source link

distinguish between our bugs and the user's bugs #237

Open gelisam opened 2 months ago

gelisam commented 2 months ago

We use the same type EvalError for bugs in the Haskell implementation of Klister and for bugs in the user's .kl code. It would probably make more sense to separate them, for example by making the implementation's bug print "the impossible happened, please report this as a bug", or just calling error :: string -> a to make it clear that they should never happen.

Currently, EvalError contains a mix of both kinds of errors: