Skip to content.

Manageability

Sections
Personal tools
You are here: Home » blog » archive » A Taxonomy for Program Generators and Analyzers

A Taxonomy for Program Generators and Analyzers

20030317213638

Stumbled upon a paper that describes a Taxonomy of Meta-Programming Systems. It's a short paper however it's a good overview of programs that generate and analyze  other programs.  Here's the taxonomy:

Generator

  1. Representation: Strings vs. Algebraic datatype vs. Quasi-quote
  2. Automatic vs. Manual annotation
  3. Static Generator vs. Runtime Generator
  4. Homogeneous vs. Heterogeneous
  5. Typed vs. un-Typed
    1. Statically Typed vs. Dynamically Typed
  6. Two-stage vs. N-stage

Analysis

  1. Homogeneous vs. Heterogeneous
  2. Higher Order Abstract Syntax vs. First Order Syntax
  3. Typed vs. un-Typed

Another taxonomy can be found in A Survey of Rewriting Strategies in Program Transformation Systems.

  • Translation
    1. Migration
    2. Synthesis
    3. Reverse Engineering
    4. Analysis
  • Rephrasing
    1. Normalization
    2. Optimization
    3. Refactoring
    4. Renovation

Less abstract than the first, more like an enumeration of program transformation instances.

Created by admin
Last modified 2003-07-30 04:14 PM
 

Powered by Plone

This site conforms to the following standards: