anchor.diff:  			       (typecase thing
   				 (list (case (car thing)
   					 (&environment (->names (cddr thing)))
  -					 (quote 
  +					 (quote
   					  (if (cddr thing)
   					      (->names (cdr thing))
   					      (concatenate 'string "'" (->names (cadr thing)))))
  
positive.code: 
  (define-json-handler (cl-notebook/notebook/change-cell-language) ((book :notebook) (cell-id :integer) (new-language :keyword))
    (let ((cont-fact (first (lookup book :a cell-id :b :contents)))
  	(val-fact (first (lookup book :a cell-id :b :result)))	
  	(cell-type (caddar (lookup book :a cell-id :b :cell-type)))
  	(lang-fact (first (lookup book :a cell-id :b :cell-language))))
      (unless (eq (third lang-fact) new-language)
  
negative.code:        do (let ((stale? (first (lookup book :a cell-id :b :stale :c t)))
  		(res-fact (first (lookup book :a cell-id :b :result)))
  		(*package* (namespace book)))
  	    (let ((res
  		   (handler-case
  		       (bt:with-timeout (.1)
  			 (front-end-eval
  			  :common-lisp cell-type
  			  (caddar (lookup book :a cell-id :b :contents))))
  		     #-sbcl (bordeaux-threads:timeout () :timed-out)
  		     #+sbcl (sb-ext:timeout () :timed-out))))
  