anchor.diff:  			  (send textarea val (concat prev-value tab)))
   			false)))
   	   (keyup (lambda (evt)
  -		    (try (chain (jq "#output")
  -				(text (sibilant.translate-all
  -				       (send textarea val)))
  +                    (defvar output ($ "#output"))
  +		    (try (chain output
  +				(text (sibilant.translate-all (textarea.val)))
   				(remove-class 'error))
  -			 (chain (jq "#output")
  +			 (chain output
   				(text e.stack)
   				(add-class 'error))))))
       (check-hash)))
  
positive.code:   ((get macros "!=") -1 (macros.send (translate arr) 'index-of item)))
  
  
  (j-query (lambda (jq)
      (defun check-hash (&rest ignored)
        (when (defined? check-hash.timeout)
  	(clear-timeout check-hash.timeout)
  	(delete check-hash.timeout))
        
        (when (!= window.location.hash (send (jq window) data 'last-hash))
  	  (chain (jq window)
  	    (data 'last-hash window.location.hash)
  	    (trigger 'hash-change window.location.hash)))
  	(setf check-hash.timeout (set-timeout check-hash 500)))
      
      (defvar items (jq "script[language=sibilant/example]"))
  
      (send (jq window) click
  	  (lambda (evt)
  	    (set-timeout check-hash 25)))
  
      (send (jq window) bind 'hash-change
  	  (lambda (evt hash)
  	    (defvar item (send items filter hash))
  	    (when (< 0 item.length)
  	      (defvar content (chain item
  				     (text)
  				     (replace "<![CDATA[\n", "")
  				     (replace "]]>" "")))
  	      (defvar title (send item attr "data-title"))
  	      (send (jq "header h2") html title)
  
  	      (defvar next (send item next items.selector))
  	      (defvar prev (send item prev items.selector))
  
  	      (if (> next.length 0)
  		  (chain (jq "#next")
  			 (attr 'href (concat "#" (send next attr 'id)))
  			 (show))
  		(send (jq "#next") hide))
  
  	      (if (> prev.length 0)
  		  (chain (jq "#prev")
  			 (attr 'href (concat "#" (send prev attr 'id)))
  			 (show))
  		(send (jq "#prev") hide))
  
  	      (chain (jq "textarea")
  		     (val (trim content))
  		     (keyup)))))
  
  
      (when (contains? window.location.hash (list "" "#"))
  
negative.code:     	      (chain items (first) (attr 'id))))
  
      (defun calculate-height ()
  	(chain ($ "textarea, #output")
  	       (each (lambda (&rest args)
  		       (defvar block ($ this)
                                 value (+ (send block val)
  					(send block text))
                                 lines (length
  				      (or (list)
  					  (send value match /[^\s]\n/g))))
  		       (block.height (* (+ 1 lines) 20))))))
  
      (defvar textarea ($ 'textarea))
  
      (defun determine-tab-stop (value)
        (defvar lines       (send value split "\n")
                open-parens (list))
        (each (line) lines
  	  (each (char offset) (line.split "")
                  (switch char
                          ("(" (open-parens.push offset))
                          (")" (open-parens.pop)))))
        (+ 2 (last open-parens)))
  
      (defun repeat (times string)
  