This repository was archived by the owner on Sep 10, 2025. It is now read-only.
Tags: skx/critical
Tags
Previously we invoked our parser, to parse the input, in our `Evaluate` call. This meant that evaluating the same script multiple times wasn't possible: * First run: * Evaluate parses the program, executes each command. * Second run * Evaluate has a parser which has already consumed the input. * There is nothing to parse. * So nothing is executed. This pull-request moves the parser-consumption to the constructor, which necessitated changing the constructor's signature, so that the parser will always consume all input ahead of the call to `Evaluate`. The end result is you can run: * New(..) * Evalute * Runs the program. * Evaluate * Runs the program, again. * .. This closes #25.