Jump to content

Universal Turing machine: Difference between revisions

Line 2,396:
 
(defun run (rules right state halt blank)
(let (left rule operandop match)
(loop until (member state halt) do
(setf rule (cdr (assoc state rules)) operandop 'null match t)
(dolist (token rule)
(case token
Line 2,405:
(< (when match (push (pop left) right)))
(> (when match (push (pop right) left)))
(@ (when match (setf state operandop) (return)))
(t (setf operandop token)))
(unless (car right) (pop right) (push blank right))))
(format t "Q = <~a, ~{~a~}.~{~a~}>~%" state (reverse left) right)))</lang>
422

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.