EXA>shrdlu^k! 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 " ) n (GRAPH OF (:B1 !DISPLAY !BLOCK (110 100 0) (100 100 100) RED) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B2 !DISPLAY !PYRAMID (110 100 100) (100 100 100) GREEN) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B3 !DISPLAY !BLOCK (400 0 0) (200 200 200) GREEN) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B4 !DISPLAY !PYRAMID (640 640 1) (200 200 200) BLUE) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B5 !DISPLAY !PYRAMID (500 100 200) (100 100 300) RED) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B6 !DISPLAY !BLOCK (0 300 0) (200 300 300) RED) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B7 !DISPLAY !BLOCK (0 240 300) (200 200 200) GREEN) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:B10 !DISPLAY !BLOCK (300 640 0) (200 100 400) BLUE) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:HAND !DISPLAY !HAND (40 0 0) (0 0 0) WHITE) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:TABLE !DISPLAY !TABLE (0 0 0) (1000 1000 0) BLACK) UNKNOWN: ASSUME BLOCK) (GRAPH OF (:BOX !DISPLAY !BOX (600 600 0) (376 376 300) WHITE) UNKNOWN: ASSUME BLOCK) YOU ARE NOW IN A READ-EVAL-PRINT LOOP TYPE " GO " TO ENTER READY STATE >>> go READY ^B ;BKPT ^B (setq nostop t) T $p PICK UP A BIG RED BLOCK. OK . READY GRASP THE PYRAMID. [3] I DON'T KNOW WHICH PYRAMID YOU MEAN. READY FIND A BLOCK WHICH IS TALLER THAN THE ONE YOU ARE HOLDING AND PUT IT INTO THE BOX. OK . DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () READY WHAT DOES THE BOX CONTAIN? THE BLUE BLOCK AND THE BLUE PYRAMID . READY WHAT IS THE PYRAMID SUPPORTED BY? THE BOX . READY HOW MANY BLOCKS ARE NOT IN THE BOX? FOUR OF THEM . READY IS AT LEAST ONE OF THEM NARROWER THAN THE ONE WHICH I TOLD YOU TO PICK UP? READY IS AT LEAST ONE OF THEM NARROWER THAN THE ONE WHICH I TOLD YOU TO PICK UP? READY ^B ;BKPT ^B (setq nostop nil) NIL $p IS AT LEAST ONE OF THEM NARROWER THAN THE ONE WHICH I TOLD YOU TO PICK UP? SMCL1 -- NO SUBJECT >>> () CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T UNDERSTAND. READY is the red c *SORRY I DON'T KNOW THE WORD " C ". PLEASE TYPE AND CONTINUE THE SENTENCE. u READY IS THE RED cube supported? YES, BY THE TABLE . READY can teh *SORRY I DON'T KNOW THE WORD " TEH ". PLEASE TYPE AND CONTINUE THE SENTENCE. table READY CAN the table pick up blocks? [3] THAT DOESN'T MAKE ANY SENSE TO ME. READY can a pyramid be supported by a block? YES, . READY can a pyramid support a pyramid? I DON'T KNOW . READY stack up two pyramids? CLAUSE: QCHOP >>> () [3] I DON'T UNDERSTAND. READY stack up two pyramids. I CAN'T . READY WILL YOU PLEASE STACK UP BOTH OF THE RED BLOCKS AND EITHER A GREEN CUBE OR A PYRAMID? [3] I DON'T KNOW WHAT YOU MEAN BY " BOTH OF THE RED BLOCKS AND EITHER A GREEN CUBE OR A PYRAMID " . READY stack up two red blocks. OK . READY put a pyramid on the top red blcCock. [3] I DON'T UNDERSTAND. READY $$ >>> show scene CURRENT SCENE :B1 --> THE RED CUBE AT (234 710 300) :B2 --> THE GREEN PYRAMID AT (740 234 0) :B3 --> THE LARGE GREEN CUBE WHICH SUPPORTS THE RED ONE AT (400 0 0) ! SUPPORTS (:B5) :B4 --> THE BLUE PYRAMID AT (640 640 1) :B5 --> THE RED PYRAMID AT (500 100 200) :B6 --> THE LARGE RED BLOCK AT (174 610 0)SUPPORTS (:B1) :B7 --> THE LARGE GREEN CUBE WHICH IS TO THE RIGHT OF NOTHING AT (274 320 0) :B10 --> THE BLUE BLOCK AT (600 1040 1) :BOX --> THE BOX AT (600 600 0)SUPPORTS (:B4 :B10) THE HAND IS GRASPING NOTHING * >>> $$$$() READY put the green pyramid on the red cube. OK . READY WHICH CUBE IS SITTING ON THE TABLE? THE LARGE GREEN ONE WHICH IS TO THE RIGHT OF NOTHING AND THE LARGE GREEN ONE WHICH SUPPORTS THE RED ONE . READY IS THERE A LARGE BLOCK BEHIND A PYRAMID? YES, TWO OF THEM :THE BLUE ONE AND THE LARGE RED ONE . DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () READY PUT A SMALL ONE ONTO THE GREEN CUBE WHICH SUPPORTS A PYRAMID. OK . DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () READY PUT THE LITTLEST PYRAMID ON TOP OF IT. OK . READY DOES THE SHORTEST THING THE TALLEST PYRAMID'S SUPPORT SUPPORTS SUPPORT ANYTHING GREEN? CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T UNDERSTAND. READY $$ >>> show scene CURRENT SCENE :B1 --> THE RED CUBE AT (360 57 200)SUPPORTS (:B2) :B2 --> THE GREEN PYRAMID AT (360 57 300) :B3 --> THE LARGE GREEN CUBE WHICH SUPPORTS THE RED ONE AND THE RED ONE AT (400 0 0) ! SUPPORTS (:B5 :B1) :B4 --> THE BLUE PYRAMID AT (640 640 1) :B5 --> THE RED PYRAMID AT (500 100 200) :B6 --> THE LARGE RED BLOCK AT (174 610 0) :B7 --> THE LARGE GREEN CUBE WHICH IS TO THE RIGHT OF NOTHING AT (274 320 0) :B10 --> THE BLUE BLOCK AT (600 1040 1) :BOX --> THE BOX AT (600 600 0)SUPPORTS (:B4 :B10) THE HAND IS GRASPING NOTHING * >>> $$$$() READY does the red cube support anything? YES, THE GREEN PYRAMID . READY what color is the clLCblock that supports the green pyramid? ANSNAME: FAILURE TO PARSE ANSWER NAME BUT IF YOU ONLY EXPECT THE ANSWER TO BE AN ADJ, PROCEED THIS AND DON (QUOTE T) WORRY >>> ()RED . READY HOW MANY THINGS ARE ON TOP OF GREEN CUBES? TWO THINGS . DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () READY HAD YOU TOUCHED ANY PYRAMID BEFORE YOU PUT THE GREEN ONE ON THE LITTLE CUBE? CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T KNOW WHICH GREEN ONE YOU MEAN. READY had you touched any pyramid before you put the green pyramid on the little cube? YES, THE GREEN ONE . READY WHEN DID YOU PICK IT UP? WHILE STACKING UP THE RED CUBE AND THE LARGE RED BLOCK . READY WHY? SMADJQSHORT NOT WRITTEN YET >>> (). READY why did you pick up the green pyramid? TO GET RID OF THE GREEN PYRAMID ;THE UNDEFINED FUNCTION OBJECT ;BKPT UNDF-FNCTN QUIT READY WHY DID YOU DO THAT? BUG: SMCL1 TRANSITIVITY >>> ()I CAN'T DISCUSS A NON-EXISTENT EVENT . READY WHY DID YOU CLEAR OFF THAT CUBE? TO PUT THE RED CUBE ON THE LARGE RED BLOCK . READY WHY DID YOU DO THAT? BUG: SMCL1 TRANSITIVITY >>> ()I CAN'T DISCUSS A NON-EXISTENT EVENT . READY how did you clean off the red cube? BUG!!!!!!!!!! NAMEACTION - I DON'T KNOW WHAT TO DO WITH THE VERB I GOT >>> ()BY GETTING RID OF THE GREEN PYRAMID ;THE UNDEFINED FUNCTION OBJECT ;BKPT UNDF-FNCTN $p ;BKPT *RSET-TRAP QUIT READY HOW MANY OBJECTS DID YOU TOUCH WHILE YOU WERE DOING IT? CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T KNOW WHAT " IT " REFERS TO READY WHAT DID THE RED CUBE SUPPORT BEFORE YOU STARTED TO CLEAN IT OFF? SMCL1 -- NO SUBJECT >>> () I DON'T KNOW WHAT TO DO WITH AMBIGUOUS BOUND CLAUSES >>> ()THE GREEN PYRAMID . READY THERE WERE FIVE BLOCKS TO THE LEFT OF THE BOX THEN. CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T KNOW WHAT YOU MEAN BY " THE LEFT " . READY PUT THE BLUE PYRAMID ON THE BLOCK IN THE BOX. OK . READY IS THERE ANYTHING WHICH IS BIGGER THAN EVERY PYRAMID BUT IS NOT AS WIDE AS THE THING THAT SUPPORTS IT? YES, FOUR THINGS :THE BLUE BLOCK ,THE LARGE RED ONE ,THE BOX ,AND THE TABLE . DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () DOBACKREF: RETURN REFERENT FOR BACKNODE >>> () READY IS THERE ANYTHING TO THE RIGHT OF THE RED PYRAMID? CLAUSE: SOMETHING LEFT OVER AT TOP LEVEL >>> () [3] I DON'T KNOW WHAT YOU MEAN BY " THE RIGHT " . READY THANK YOU. YOU'RE WELCOME [3] I DON'T UNDERSTAND. READY