code: func (p *parser) parseBlockParams() []string {
  	var result []string
  
  	// OPEN_BLOCK_PARAMS
  	tok := p.shift()
  
  	// ID+
  	for p.isID() {
  		result = append(result, p.shift().Val)
  	}
  
  	if len(result) == 0 {
  		errExpected(lexer.TokenID, p.next())
  	}
  
  	// CLOSE_BLOCK_PARAMS
  	tok = p.shift()
  	if tok.Kind != lexer.TokenCloseBlockParams {
  		errExpected(lexer.TokenCloseBlockParams, tok)
  	}
  
  	return result
  }
docs: // blockParams : OPEN_BLOCK_PARAMS ID+ CLOSE_BLOCK_PARAMS