anchor.diff:  (define-condition tal-compilation-error (tal-compilation-condition error) ())
   (defun tal-error (message &rest args)
     (error (make-condition 'tal-compilation-error
  +			 :format-control message
  +			 :format-args args)))
  +
  +(defun find-expression-line/col-number (expr)
  +  (with-input-from-string (s *string-being-compiled*)
  +    (let ((target (search expr *string-being-compiled* :test #'char=)))
  +      (when target
  +	(iter (for line in-stream s using #'adwutils:dos-safe-read-line )
  +	      (for line-len = (+ 1 (length line))) ;;dont forget newlines
  +	      (for start-len = total-len)
  +	      (summing line-len into total-len)
  +	      (counting line into lines)
  +	      (when (> total-len target)
  +		(return #?"line: ${lines} col: ${ (- target start-len) }, line: ${line}"))
  +	      )))))
  +
  +(define-condition tal-unexpected-eof-compilation-error (tal-compilation-error error) ())
  +(defun error-tal-expression-eof (expression &optional error)
  +  (let* ((loc (find-expression-line/col-number expression))
  +	 (message (with-output-to-string (s)
  +		    (princ "Unexpected EOF in tal expression starting with $~% Input: ~S" s)
  +		    (when loc
  +		      (princ "~% Estimated Location: ~a" s))
  +		    (when error
  +		      (princ "~% Error: ~s" s)))))
  +    (error (make-condition 'tal-unexpected-eof-compilation-error
  +			   :format-control message
  +			   :format-args (remove nil (list expression loc error))))))
  +
  +(defun tal-runtime-error (message &rest args)
  +  (error (make-condition 'tal-runtime-condition
   			 :format-control message
   			 :format-args args)))
   
  
positive.code: 		;; didn't find a handler for that tag or any of it's
  		;; attributes, must be a "regular" yaclml tag.
  		(handle-regular-tag tag-name attributes body)))
  	    (error "Badly formatted YACLML: ~S." form)))))
    
  (defun compile-tal-string-to-lambda (string &optional (expression-package *package*))
    "Returns the source code for the tal function form the tal text STRING."
    `(lambda (&optional -tal-environment-)
       (declare (ignorable -tal-environment-)
  	      (optimize (debug 3)))
       ,(let ((*package* (find-package :ucw))
  	    (*expression-package* expression-package)
  	    (parse-tree (cxml:parse string
  				    (make-interner *uri-to-package*
  						   (cxml-xmls:make-xmls-builder
  						    :include-namespace-uri t)))))
  	(transform-lxml-form parse-tree))))
  
  (defun compile-tal-string (string &optional
  			   (expression-package (find-package :common-lisp-user)))
  
negative.code: ;;;; "http://common-lisp.net/project/bese/tal/params" name space.
  
  (defvar *tal-attribute-handlers* ())
  (defvar *tal-tag-handlers* ())
  (defvar *string-being-compiled*)
  (defvar *name-being-compiled* ())
  
  ;;;; Interning namespaced elements to packages
  (defparameter *uri-to-package*
  