23.03.2013 Views

Performance and Evaluation of Lisp Systems - Dreamsongs

Performance and Evaluation of Lisp Systems - Dreamsongs

Performance and Evaluation of Lisp Systems - Dreamsongs

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

§ 3.15 Puzzle 211<br />

(TRIAL<br />

(LAMBDA (J)<br />

(bind (K 0) for I from 0 to TYPEMAX<br />

do (if (AND (NEQ 0 (PIECECOUNT (CLASS I)))<br />

(FIT I J))<br />

then<br />

(SETQ K (PLACE I J))<br />

(if (OR (TRIAL K)<br />

(ZEROP K))<br />

then<br />

(AND PUZZLETRACEFLG<br />

(printout<br />

NIL<br />

T<br />

"Piece" .TAB "at" .TAB (ADD1 K)))<br />

(add KOUNT 1)<br />

(RETURN T)<br />

else (REMOVE! I J)))<br />

finally (PROGN (add KOUNT 1)<br />

NIL))))<br />

(DEFINEPIECE<br />

(LAMBDA (ICLASS II JJ KK)<br />

(PROG ((INDEX 0))<br />

(for I from 0 to II<br />

do (for J from 0 to JJ<br />

do (for K from 0 to KK<br />

do (SETQ<br />

INDEX<br />

(IPLUS I<br />

(ITIMES D<br />

(IPLUS J<br />

(ITIMES D K)))))<br />

(PASET T P III INDEX))))<br />

(16ASET ICLASS CLASS III)<br />

(16ASET INDEX PIECEMAX III)<br />

(if (NEQ III TYPEMAX)<br />

then (add III 1)))))

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!