Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update SHRDLU and MicroPlanner to run on newer Maclisp.
Note: SHRDLU only works with the visual block rendering on pdp10-ka with the Type 340 display enabled. Even then, there is some issue that causes the SLAVE interface to the Type 340 display to fail, with an error indicating that the 340 is not available. This is still to be tracked down. Without the Type 340 display, SHRDLU should work reasonably well. It fails at some things that the DEMO apparently succeeded in doing. It is not clear why, but likely the demo was created at one point, and the SHRDLU sources were updated after that point, breaking some things. SHRDLU can be invoked with :SHRDLU;SHRDLU. Once you invoke SHRDLU, you'll see output similar to this: SHRDLU VERSION 1000 LOADED 2024-07-21 IN BLISP 2156 REFER COMMENTS AND QUESTIONS TO DDM VERSION RECONSTRUCTED BY EJS -IF YOU ARE NEAR A DEC-340 DO YOU WANT THE DISPLAY (TYPE " Y " OR " N " ) If you are running the pdp10-ka emulator, have enabled the DPY device, and want to see the display, answer "Y". Otherwise, answer "N". Then, after some more output you will see: YOU ARE NOW IN A READ-EVAL-PRINT LOOP TYPE " GO " TO ENTER READY STATE >>> You are now in command mode and can type various commands, such as "SHOW". You can also type "GO" to enter ready mode. It is in ready mode that you can issue commands like "pick up a big red block.", to which SHRDLU should respond "OK.". Note that commands should be ended with a period ("."). Questions should be ended with an exclamation mark ("?"). An example question might be: "what is in the box?". MicroPlanner can be invoked with :SHRDLU;PLNR. As a simple test of MicroPlanner, you can enter these expressions (marked with "==>" -- don't type that). If the (THVAL ...) form results in printing "(FALLIBLE TURING)" then you know that basic goal reaching works. >>> TOPLEVEL LISTENING THVAL ==> (THASSERT (HUMAN TURING)) ((HUMAN TURING)) ==> (DEFPROP THEO1 (THCONSE (X) (FALLIBLE $?X) (THGOAL (HUMAN $?X))) THEOREM) THEO1 ==> (THASSERT THEO1) THEO1 ==> (THVAL (THGOAL (FALLIBLE TURING) (THTBF THTRUE)) NIL) (FALLIBLE TURING)
- Loading branch information