Paper Summary: Data Driven Synthesis for Object-Oriented Frameworks

This is a summary for the paper Data Driven Synthesis for Object-Oriented Frameworks by Kuat Yessenov. et. al

Data Driven Synthesis for Object-Oriented Frameworks

  1. Focus / Problem to be solved
    1. object-oriented frameworks tend to grow exceedingly intricate; they spread functionality among numerous classes, and any use of the framework requires knowledge of many interacting components.
  2. Importance
    1. reduce the learning curve for programmers when using new frameworks
  3. Method
    1. a system, MatchMaker, that synthesis code that interacts with the framework from a simple query
      1. input: the names of the two frameworks
      2. output: code enabling interaction between them
      3. requirements: a database of dynamic program traces
  4. Context
    1. Mine source code for
      1. frequent call sequences to derive object of one type to another type
      2. complex initialization patterns
      3. frequent API patterns
    2. PQL, a query language to analyze program execution statically or dynamically
    3. Sketch
  5. Results
    1. user study that shows 49% average productivity improvement
  6. Unique contributions
  7. Possible applications
  8. Additional Notes
    1. MatchMaker hypothesis: In order for two objects to interact with each other, there must be a chain of references linking them together. Therefore, the set of actions that led to the creation of the chain is the set of actions that need to take place to enable the interaction.
Advertisements
This entry was posted in Programming Language. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s