anchor.diff:  			(typep successor 'instruction))
   		      (successors obj)))
       (error "successors must be a list of instructions")))
  +
  +(defgeneric clone-instruction (instruction))
  +
  +(defmethod clone-instruction ((instruction instruction))
  +  (make-instance (class-of instruction)
  +    :inputs (inputs instruction)
  +    :outputs (outputs instruction)
  +    :successors (successors instruction)))
   
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   ;;;
  
positive.code:     :name name))
  
  (defmethod draw-datum ((datum register-location) stream)
    (format stream "   ~a [fillcolor = yellow, label = \"~a\"]~%"
  	  (gethash datum *datum-table*)
  	  (name datum)))
  
  
negative.code: 
  (defmethod draw-instruction ((instruction get-arg-instruction) stream)
    (format stream "   ~a [label = \"arg\", color = orange];~%"
  	  (unique-id instruction)))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  ;;; Instruction LOAD-CONSTANT-INSTRUCTION.
  
  (defclass load-constant-instruction (instruction)
    ())
  
  (defun make-load-constant-instruction (inputs output successor)
    (make-instance 'load-constant-instruction
      :inputs inputs
      :outputs (list output)
      :successors (list successor)))
  
  (defmethod draw-instruction ((instruction load-constant-instruction) stream)
    (format stream "   ~a [label = \"LC\"];~%"
  	  (unique-id instruction)))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  ;;; Instruction LOAD-GLOBAL-INSTRUCTION.
  
  (defclass load-global-instruction (instruction)
    ())
  
  (defun make-load-global-instruction (inputs output successor)
    (make-instance 'load-global-instruction
      :inputs inputs
      :outputs (list output)
      :successors (list successor)))
  
  (defmethod draw-instruction ((instruction load-global-instruction) stream)
    (format stream "   ~a [label = \"LX\"];~%"
  	  (unique-id instruction)))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  ;;; Instruction LOAD-STATIC-ENV-INSTRUCTION.
  
  (defclass load-static-env-instruction (instruction)
    ())
  
  (defun make-load-static-env-instruction (input output successor)
    (make-instance 'load-static-env-instruction
      :inputs (list input)
      :outputs (list output)
      :successors (list successor)))
  
  (defmethod draw-instruction ((instruction load-static-env-instruction) stream)
    (format stream "   ~a [label = \"LSE\"];~%"
  	  (unique-id instruction)))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  ;;; Instruction LOAD-LINKAGE-VECTOR-INSTRUCTION.
  
  (defclass load-linkage-vector-instruction (instruction)
    ())
  
  (defun make-load-linkage-vector-instruction (input output successor)
    (make-instance 'load-linkage-vector-instruction
      :inputs (list input)
      :outputs (list output)
      :successors (list successor)))
  
  (defmethod draw-instruction
      ((instruction load-linkage-vector-instruction) stream)
    (format stream "   ~a [label = \"LLV\"];~%"
  	  (unique-id instruction)))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  