We've been twice challenged to make 'error quines' (see Make an error quine! and Make a slow error quine maker!), so why don't we try the opposite?
Instructions
- Write a "program" that, when run, produces an error.
- Copy the error message into a new program, and run it.
- Repeat Step 2 until the program runs without producing an error.
Rules
- All of your programs must be run in the same language.
- None of your programs can be shorter than 1 byte long.
- The error(s) should be printed to STDERR.
Winning criteria
Your score is the number of programs run minus the length in bytes of your initial program. Highest score wins.
An example in monochrome TI-83+/84+ BASIC:
Initial program: {"
This creates a list with a string inside it, throwing an ERR:DATA TYPE
.
Program 2: ERR:DATA TYPE
The space causes the interpreter to throw an ERR:SYNTAX
.
Program 3: ERR:SYNTAX
The letters are treated as variable multiplication, and the colon as
a newline. This runs successfully.
This chain's score is 3 (number of programs) minus 2 (length in bytes of {"
, the initial program), totaling 1
.
Even if otherwise qualifies to win, your answer will not be accepted if it's a modification of an answer to the slow error quine thread
, but that's not particularly objective; where do I draw the line at 'modification of'? \$\endgroup\$