Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. Computer Science and Artificial Intelligence Lab (CSAIL)
  3. LCS Publications
  4. LCS Technical Reports (1974 - 2003)
  5. A Type System and Analysis for the Automatic Extraction and Enforcement of Design Information

A Type System and Analysis for the Automatic Extraction and Enforcement of Design Information

Thumbnail Image
Download
Name

MIT-LCS-TR-874.pdf

Size

242.97 KB

Format

Adobe PDF

Checksum (MD5)

feeffe1fda565fde39441d145a14d2da

Author(s)
Lam, Patrick
•
Rinard, Martin
Date Issued
December 2002
Series/Report no.
MIT-LCS-TR-874
Abstract
We present a new type system and associated type checker, analysis, and model extraction algorithms for automatically extracting models that capture aspects of the design of the program. Our type system enables the developer to place a _token_ on each object; this token serves as the object's representative during the analysis and model extraction. The polymorphism in our type system enables the use of general-purpose classes whose instances may serve different purposes in the computation; programmers may also hide the details of internal data structures by placing the same token on all of the objects in these data structures. Our combined type system and analysis provide the model extraction algorithms with sound heap aliasing information. Our algorithms can therefore extract both structural models that characterize object referencing relationships and behavioral models that capture indirect interactions mediated by objects in the heap. Previous approaches, in contrast, in the absence of aliasing information, have focused on control-flow interactions that take place at procedure call boundaries. We have implemented our type checker, analysis, and model extraction algorithms and used them to produce design models. Our experience indicates that it is straightforward to produce the token annotations and that the extracted models provide useful insight into the structure and behavior of the program.
Persistent DSpace Link
https://hdl.handle.net/1721.1/149970
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.