4 ms·
BBN Lisp had context sensitive error correction at least four decades ago. It was called the DWIM (Do What I mean) facility. It operated (in 1971) on unbound at
by fsck--off 13y ago
BBN Lisp had context sensitive error correction at least four decades ago. It was called the DWIM (Do What I mean) facility. It operated (in 1971) on unbound atoms and undefined function errors. If you misspelled a function name, typed an 8 or 9 instead of a left or right parenthesis, or typed an extra parenthesis, and then ran the incorrect code, the DWIM facility was called to help you. If you ran DWIM in "Trusting" mode, then changes would be made for you automatically. If you ran it in "Cautious" mode, you would be prompted to confirm proposed changes. If you didn't respond to the suggested changes within a certain time limit, the changes were made for you. BBN Lisp also had an "UNDO" function undid the side effects of any specific event, so there was no danger of it DWIM permanently munging your code. If you misspelled a command in the REPL (e.g PRETTYPRNT instead of PRETTYPRINT), the DWIM would understand that it was a misspelling and would then execute the right command.
BBN Lisp Manual (see section 17, which starts on page 335):
http://www.softwarepreservation.org/projects/LISP/bbnlisp/TenexLispRef_Jul71.pdf http://www.softwarepreservation.org/projects/LISP/bbnlisp/Te...