anchor.diff:                               (error "Parse error in ~S. #\\ at end of string." value-string)
                                (write-char next-char text))))
                     (#\$ (let ((next-char (peek-char nil val nil nil nil)))
  -			 (when next-char
  -			   (cond
  -			     ;; escaped $
  -			     ((char= #\$ next-char)
  -			      (read-char val nil nil nil)
  -			      (write-char #\$ text))
  -
  -			     (t ;; tal-expression
  -			      (let ((bracketed? (char= #\{ next-char)))
  -				;; remove open { if nec
  -				(when bracketed?
  -				  (read-char val nil nil nil))
  -				;; first push the text uptil now onto parts
  -				(let ((up-to-now (get-output-stream-string text)))
  -				  (unless (string= "" up-to-now)
  -				    (push up-to-now parts)))
  -				;; now push the form
  -				(push (if bracketed?
  -					  `(progn ,@(read-tal-bracketed-form))
  -					  (read-tal-form))
  -				  parts))
  -			      )))))
  +			 (if (not next-char)
  +			     (error-tal-expression-eof value-string)
  +			     (handler-case 
  +				 (cond
  +				   ;; escaped $
  +				   ((char= #\$ next-char)
  +				    (read-char val nil nil nil)
  +				    (write-char #\$ text))
  +
  +				   (t ;; tal-expression
  +				    (let ((bracketed? (char= #\{ next-char)))
  +				      ;; remove open { if nec
  +				      (when bracketed?
  +					(read-char val nil nil nil))
  +				      ;; first push the text uptil now onto parts
  +				      (let ((up-to-now (get-output-stream-string text)))
  +					(unless (string= "" up-to-now)
  +					  (push up-to-now parts)))
  +				      ;; now push the form
  +				      (push (if bracketed?
  +						`(progn ,@(read-tal-bracketed-form))
  +						(read-tal-form))
  +					    parts))
  +				    ))
  +			       (END-OF-FILE (e)
  +				 (error-tal-expression-eof value-string e))))))
   
                     (#\@ (let ((next-char (peek-char nil val nil nil)))
                            (if (and next-char (char= #\{ next-char))
  
positive.code: ;;;; "http://common-lisp.net/project/bese/tal/params" name space.
  
  (defvar *tal-attribute-handlers* ())
  
  (defvar *tal-tag-handlers* ())
  
  ;;;; Interning namespaced elements to packages
  (defparameter *uri-to-package*
  
negative.code: 	      (format-control c)
  	      (format-args c)))))
  
  (define-condition tal-runtime-condition (simple-condition)
    ((format-control :accessor format-control :initarg :format-control :initform nil)
     (format-args :accessor format-args :initarg :format-args :initform nil))
    (:report (lambda (c s)
  	     (apply #'format
  	      s
  	      (format-control c)
  	      (format-args c)))))
  
  (define-condition tal-compilation-warning (tal-compilation-condition warning) ())
  
  (defun tal-warn (message &rest args)
  