anchor.diff:    }
   
     /**
  -   * Attaches an action [function] to an existing production [name].
  +   * Attaches an action [function] to an existing production [name]. The code
  +   * raises a [StateError] if [name] is an undefined production. Only call this
  +   * method from [initialize].
  +   *
  +   * The following example attaches an action returning the size of list of
  +   * the previously defined list production:
  +   *
  +   *     action('list', (list) => list.length);
  +   *
      */
     void action(String name, dynamic function(Dynamic)) {
       redef(name, (parser) => parser.map(function));
     }
   
     /**
  -   * Returns a reference to a defined production named [name]. This method
  +   * Returns a reference to the production with the given [name]. This method
      * should only be called for fully initialized instances.
      */
     Parser operator [](String name) => _defined[name];
  
positive.code:   void initialize();
  
    /**
     * Returns a reference to a production with a [name].
     */
    Parser ref(String name) {
      return _undefined.putIfAbsent(name, () {
        return failure('Uninitalized production: $name').setable();
      });
    }
  
    /**
     * Defines a production with a [name] and a [parser].
     */
    void def(String name, Parser parser) {
      if (_defined.containsKey(name)) {
  
negative.code:   }
  
    /**
     * Returns a reference to a production with a [name]. Only call this method
     * from [initialize].
     *
     * At the point of calling [ref] the production does not necessaryily have
     * to be defined yet. The constructor of the class makes sure to replace
     * and optimize references away before the grammar is run.
     */
    Parser ref(String name) {
      return _undefined.putIfAbsent(name, () {
        return failure('Uninitalized production: $name').setable();
      });
    }
  
    /**
     * Redefinies an existing production with a [name] and a [function]
     * producing a new parser. The code raises a [StateError] if [name]
     * is an undefined production. Only call this method from [initialize].
     *
     * The following example redefines the previously defined list production
     * by making it optional:
     *
     *     redef('list', (parser) => parser.optional());
     */
    void redef(String name, Parser function(Parser)) {
      if (!_defined.containsKey(name)) {
  