Difference between revisions of "Parser Benchmark"

 
(Replaced origo.ethz.ch by eiffel.com in SVN URL)
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The parser benchmark tool is used to benchmark the on-going evolution of the Eiffel parser. The tool can be compiled for both classic and .NET dervitives of Eiffel to test the performance on both.
+
[[Category:Tools]]
 +
== Overview ==
 +
The parser benchmark tool is used to benchmark the on-going evolution of the Eiffel parser. The tool can be compiled for both classic and .NET dervitives of Eiffel to test the performance on both. The tool can test individual factories used in various situations, via command-line specification. In addition the frozen implementation of the Eiffel parser can be benchmarked to see the performance gains/loses on .NET.
  
The tool can test individual factories used in various situations, via command-line specification. In addition the frozen implementation of the Eiffel parser can be benchmarked to see the performance gains/loses on .NET.
+
{{Warning|This tool only compiles on Windows}}
  
 
== Built-in Factories ==
 
== Built-in Factories ==
 +
To-date there are four factories supplied with the Eiffel parser in the public repository ([https://svn.eiffel.com/eiffelstudio/trunk/Src/framework/parser/ https://svn.eiffel.com/eiffelstudio/trunk/Src/framework/parser/])
 +
* '''AST_NULL_FACTORY''': A "do-nothing" factory that does not create any abstract syntax objects, it's more for validation.
 +
* '''AST_FACTORY''': A base factory that will only create meaningful abstract syntax nodes (keywords, whitespace, comments, etc are ignored.)
 +
* '''AST_LIGHT_ROUNDTRIP_FACTORY''': A factory that does the job of AST_FACTORY and more. With this factory keyword abstract syntax nodes are created.
 +
* '''AST_ROUNDTRIP_FACTORY''': A factory that generates abstract syntax nodes and a match list (lists for non-abstract syntax-represented items) for every thing in an Eiffel code file.
  
To-date there are four factories supplied with the Eiffel parser in the public repository ([https://origo.ethz.ch/eiffelsoftware/es/trunk/Src/Eiffel/parser https://origo.ethz.ch/eiffelsoftware/es/trunk/Src/Eiffel/parser])
+
Each one of these factories is represented by a respective command line option (next section.)
* AST_NULL_FACTORY: A "do-nothing" factory that does not create any objects, it's more for validation.
+
* AST_FACTORY: A base factory that will only create meaningful abstract syntax nodes (keywords, whitespace, comments, etc are ignored.)
+
* AST_LIGHT_ROUNDTRIP_FACTORY: A factory that does the job of AST_FACTORY and more. With this factory keyword abstract syntax nodes are created.
+
* AST_ROUNDTRIP_FACTORY: A factory that generates abstract syntax nodes and a match list (lists for non-abstract syntax-represented items) for every thing in an Eiffel code file.
+
  
 
== Command-line Options ==
 
== Command-line Options ==
 
 
To view the help information please use the /? switch.
 
To view the help information please use the /? switch.
  
== Change Log ==
+
== Information ==
 +
This tool was developed and maintained by [[User:Paulb|Paulb]].
  
Initial Entry --[[User:Paulb|Paulb]] 19:38, 16 August 2006 (CEST)
+
Location: [https://svn.eiffel.com/eiffelstudio/trunk/Src/tools/parse_benchmark/ https://svn.eiffel.com/eiffelstudio/trunk/Src/tools/parse_benchmark/]
 +
 
 +
== Change Log ==
 +
Initial Entry: [[User:Paulb|Paulb]] 19:38, 16 August 2006 (CEST)

Latest revision as of 13:14, 4 June 2012

Overview

The parser benchmark tool is used to benchmark the on-going evolution of the Eiffel parser. The tool can be compiled for both classic and .NET dervitives of Eiffel to test the performance on both. The tool can test individual factories used in various situations, via command-line specification. In addition the frozen implementation of the Eiffel parser can be benchmarked to see the performance gains/loses on .NET.

Warning.png Warning: This tool only compiles on Windows

Built-in Factories

To-date there are four factories supplied with the Eiffel parser in the public repository (https://svn.eiffel.com/eiffelstudio/trunk/Src/framework/parser/)

  • AST_NULL_FACTORY: A "do-nothing" factory that does not create any abstract syntax objects, it's more for validation.
  • AST_FACTORY: A base factory that will only create meaningful abstract syntax nodes (keywords, whitespace, comments, etc are ignored.)
  • AST_LIGHT_ROUNDTRIP_FACTORY: A factory that does the job of AST_FACTORY and more. With this factory keyword abstract syntax nodes are created.
  • AST_ROUNDTRIP_FACTORY: A factory that generates abstract syntax nodes and a match list (lists for non-abstract syntax-represented items) for every thing in an Eiffel code file.

Each one of these factories is represented by a respective command line option (next section.)

Command-line Options

To view the help information please use the /? switch.

Information

This tool was developed and maintained by Paulb.

Location: https://svn.eiffel.com/eiffelstudio/trunk/Src/tools/parse_benchmark/

Change Log

Initial Entry: Paulb 19:38, 16 August 2006 (CEST)