anchor.diff:                       (if (true-with-probability stickiness)
                            (styles i)
                            (aref town-styles (random (length town-styles)))))))))
  +
   (defgeneric tick! (town)
     (:documentation "Destructively modifies a snapshot to become the next iteration of the simulation.")
     (:method ((town town-snapshot))
  
positive.code:     (dotimes (i population)
        (setf (aref out i) (make-instance 'inhabitant :style (aref styles (random (length styles))))))
      out))
                 
  (defun make-town (population &key (hipsterish-tendency 2/3) (styles #(#\# #\.)) volatile)
    "Builds a new town with a population of population, seeding with the two types of clothes."
    (make-instance 'town-snapshot
  
negative.code:       (format stream "~&~3d:  " age)
        (loop for i across styles
              for j from 0 below (or limit (length styles))
              do (format stream "~a ~7,2f%~,20t" i (/ (count-if #'(lambda (a) (char-equal i (styles a))) members) (length members) 1/100))))))
  
  (defun print-popularity (town &key limit)
    "Shorthand for write-population to *standard-output*."
  