Data-driven synthesis for object-oriented frameworks

Software construction today often involves the use of large frameworks. The challenge in this type of programming is that object-oriented frameworks tend to grow exceedingly intricate; they spread functionality among numerous classes, and any use of the framework requires knowledge of many interacti...

Full description

Bibliographic Details
Main Authors: Yessenov, Kuat T., Xu, Zhilei, Solar-Lezama, Armando
Other Authors: Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Format: Article
Language:en_US
Published: Association for Computing Machinery (ACM) 2012
Online Access:http://hdl.handle.net/1721.1/72666
https://orcid.org/0000-0001-5959-5254
https://orcid.org/0000-0001-7604-8252
https://orcid.org/0000-0002-6931-2278
_version_ 1811069045241282560
author Yessenov, Kuat T.
Xu, Zhilei
Solar-Lezama, Armando
author2 Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
author_facet Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Yessenov, Kuat T.
Xu, Zhilei
Solar-Lezama, Armando
author_sort Yessenov, Kuat T.
collection MIT
description Software construction today often involves the use of large frameworks. The challenge in this type of programming is that 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. We present a system named MATCHMAKER that from a simple query synthesizes code that interacts with the framework. The query consists of names of two framework classes, and our system produces code enabling interaction between them. MATCHMAKER relies on a database of dynamic program traces called DELIGHT that uses novel abstraction-based indexing techniques to answer queries about the evolution of heap connectivity in a matter of seconds. The paper evaluates the performance and effectiveness of MATCHMAKER on a number of benchmarks from the Eclipse framework. The paper also presents the results of a user study that showed a 49% average productivity improvement from the use of our tool.
first_indexed 2024-09-23T08:04:49Z
format Article
id mit-1721.1/72666
institution Massachusetts Institute of Technology
language en_US
last_indexed 2024-09-23T08:04:49Z
publishDate 2012
publisher Association for Computing Machinery (ACM)
record_format dspace
spelling mit-1721.1/726662022-09-30T07:20:28Z Data-driven synthesis for object-oriented frameworks Yessenov, Kuat T. Xu, Zhilei Solar-Lezama, Armando Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Yessenov, Kuat T. Xu, Zhilei Solar-Lezama, Armando Software construction today often involves the use of large frameworks. The challenge in this type of programming is that 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. We present a system named MATCHMAKER that from a simple query synthesizes code that interacts with the framework. The query consists of names of two framework classes, and our system produces code enabling interaction between them. MATCHMAKER relies on a database of dynamic program traces called DELIGHT that uses novel abstraction-based indexing techniques to answer queries about the evolution of heap connectivity in a matter of seconds. The paper evaluates the performance and effectiveness of MATCHMAKER on a number of benchmarks from the Eclipse framework. The paper also presents the results of a user study that showed a 49% average productivity improvement from the use of our tool. National Science Foundation (U.S.). (Grant number CCF-1049406) Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory 2012-09-12T17:54:01Z 2012-09-12T17:54:01Z 2011-10 Article http://purl.org/eprint/type/ConferencePaper 978-1-4503-0940-0 http://hdl.handle.net/1721.1/72666 Kuat Yessenov, Zhilei Xu, and Armando Solar-Lezama. 2011. Data-driven synthesis for object-oriented frameworks. SIGPLAN Not. 46, 10 (October 2011), 65-82. https://orcid.org/0000-0001-5959-5254 https://orcid.org/0000-0001-7604-8252 https://orcid.org/0000-0002-6931-2278 en_US http://dx.doi.org/10.1145/2048066.2048075 Proceedings of the 2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA '11) Creative Commons Attribution-Noncommercial-Share Alike 3.0 http://creativecommons.org/licenses/by-nc-sa/3.0/ application/pdf Association for Computing Machinery (ACM) MIT web domain
spellingShingle Yessenov, Kuat T.
Xu, Zhilei
Solar-Lezama, Armando
Data-driven synthesis for object-oriented frameworks
title Data-driven synthesis for object-oriented frameworks
title_full Data-driven synthesis for object-oriented frameworks
title_fullStr Data-driven synthesis for object-oriented frameworks
title_full_unstemmed Data-driven synthesis for object-oriented frameworks
title_short Data-driven synthesis for object-oriented frameworks
title_sort data driven synthesis for object oriented frameworks
url http://hdl.handle.net/1721.1/72666
https://orcid.org/0000-0001-5959-5254
https://orcid.org/0000-0001-7604-8252
https://orcid.org/0000-0002-6931-2278
work_keys_str_mv AT yessenovkuatt datadrivensynthesisforobjectorientedframeworks
AT xuzhilei datadrivensynthesisforobjectorientedframeworks
AT solarlezamaarmando datadrivensynthesisforobjectorientedframeworks