The tools suite. This cluster contains all the main classes used to implement the following tools:

- clean
- compile
- compile_to_c
- compile_to_jvm
- finder
- pretty
- short

This cluster also provides many utilities used by the tools:

- ACE and CLUSTER provide for LACE features.
- BASE_CLASS represents a syntactic class, i.e. a tree of objects directly derived from a source by the Eiffel parser.
- E_FEATURE is the interface of the feature component. It represents a syntactic feature (attribute, command, query, once feature and so on) i.e. a tree of objects directly derived from a source by the Eiffel parser.
- E_TYPE is the interface of the e_type component. It represents an Eiffel type.
- EXPRESSION is the interface of the expression component. It represents an Eiffel expression, i.e. a syntactic construction having a result type.
- GLOBALS allows the tools to share singletons:
  - address_of_pool
  - ace
  - assignment_handler
  - constant_pool
  - cpp
  - echo
  - eiffel_parser
  - error_handler
  - frozen_string_list
  - gc_handler
  - id_provider
  - jvm
  - manifest_array_pool
  - method_info
  - once_manifest_string_pool
  - once_routine_pool
  - pretty_printer
  - smart_eiffel
  - string_aliaser
  - switch_collection
  - system_tools
- INSTRUCTION is the interface of the instruction component. It represents an Eiffel instruction.
- RUN_CLASS represents a live class, i.e. one to which some objects are assigned (either via creation, assignment or feature call). For example, ARRAY[INTEGER] and ARRAY[STRING] are two different RUN_CLASSes sharing the same BASE_CLASS.
- RUN_FEATURE represents a live feature, i.e. a callable feature tailored for some particular RUN_CLASS.
- SMART_EIFFEL manages the compilation process.