anchor.diff:  ;;; I don't know what does the standard mean!
   (defmethod %to-string ((this -object-proto) &optional radix)
     (declare (ignore radix))
  -  )
  +  (let ((tag ""))
  +    (cond ((-is-array this)
  +	   (setf tag "Array"))
  +	  ((eql (type-of this) '-string-proto)
  +	   (setf tag "String"))
  +	  ((eql (type-of this) '-function-proto)
  +	   (setf tag "Function"))
  +	  ((eql (type-of this) '-error-proto)
  +	   (setf tag "Error"))
  +	  ((eql (type-of this) '-boolean-proto)
  +	   (setf tag "Boolean"))
  +	  ((eql (type-of this) '-number-proto)
  +	   (setf tag "Number"))
  +	  ((eql (type-of this) '-date-proto)
  +	   (setf tag "Date"))
  +	  ((eql (type-of this) '-reg-exp-proto)
  +	   (setf tag "RegExp"))
  +	  (t
  +	   (let ((new-tag (-get this *symbol-to-string-tag*)))
  +	     (if (eql :undefined new-tag)
  +		 (setf tag "Object")
  +		 (setf tag new-tag)))))
  +    (!string (concatenate 'string "[object " tag "]"))))
   
   (defmethod %value-of ((this -object-proto))
     (-to-object this))
  
positive.code: 	(-set-integrity-level object "sealed")
  	object)))
  
  (defun -object.set-prototype-of (object prototype)
    )
  
  ;;; Prototype property methods are handled with 'this', so define them as
  ;;; methods.
  
negative.code: 	  *boolean-true*)))
  
  (defun -object.keys (object)
    (let ((obj (-to-object object))
  	(name-list nil))
      (dolist (key-value (properties obj))
        (let ((prop (cdr key-value))
  	    (key (car key-value)))
  	(when (eql (property-enumerable prop) :true)
  	  ;; Here the key are raw Lisp symbols, how to handle them?
  	  (push key name-list))))
      (!array name-list)))
  
  (defun -object.prevent-extensions (object)
    (if (not (eql (-type object) 'object-type))
  