Award Abstract # 0347289
CAREER: Type-Directed Programming in Object-Oriented Languages

NSF Org: CCF
Division of Computing and Communication Foundations
Recipient: TRUSTEES OF THE UNIVERSITY OF PENNSYLVANIA, THE
Initial Amendment Date: December 15, 2003
Latest Amendment Date: January 14, 2009
Award Number: 0347289
Award Instrument: Continuing Grant
Program Manager: Sol Greenspan
sgreensp@nsf.gov
 (703)292-7841
CCF
 Division of Computing and Communication Foundations
CSE
 Directorate for Computer and Information Science and Engineering
Start Date: December 15, 2003
End Date: November 30, 2009 (Estimated)
Total Intended Award Amount: $0.00
Total Awarded Amount to Date: $400,000.00
Funds Obligated to Date: FY 2004 = $80,000.00
FY 2005 = $80,000.00

FY 2006 = $80,000.00

FY 2007 = $80,000.00

FY 2008 = $80,000.00
History of Investigator:
  • Stephanie Weirich (Principal Investigator)
    sweirich@cis.upenn.edu
Recipient Sponsored Research Office: University of Pennsylvania
3451 WALNUT ST STE 440A
PHILADELPHIA
PA  US  19104-6205
(215)898-7293
Sponsor Congressional District: 03
Primary Place of Performance: University of Pennsylvania
3451 WALNUT ST STE 440A
PHILADELPHIA
PA  US  19104-6205
Primary Place of Performance
Congressional District:
03
Unique Entity Identifier (UEI): GM1XX56LEP58
Parent UEI: GM1XX56LEP58
NSF Program(s): SOFTWARE ENGINEERING AND LANGU
Primary Program Source: app-0104 
app-0105 

app-0106 

app-0107 

01000809DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 1045, 1187, 9218, HPCC
Program Element Code(s): 288000
Award Agency Code: 4900
Fund Agency Code: 4900
Assistance Listing Number(s): 47.070

ABSTRACT

0347289
CAREER: Type-Directed Programming in Object-Oriented Languages
Stephanie Weirich
University of Pittsburgh

Type-directed programming is an important paradigm in the design of software. By using this form of programming to analyze the structure of data, many operations, such as serialization, equality and iterators may be defined once, for all types of data. As software evolves, these operations need not be updated---they will automatically adapt to new data forms. Although object-oriented languages are widely used in the implementation of modern software systems, they have only primitive support for type-directed programming. Therefore, this project proposes to adapt and extend the mechanisms for type-directed programming to those languages.

The specific goals of the project are threefold. The first goal is to extend the existing theory of type-directed programming to object-oriented programming languages. The second is to validate and refine that theory by developing an implementation of an object-oriented language that supports type-directed programming. Finally, the third goal is to use this implementation to investigate new patterns of type-directed programming to inspire new developments in language support for these patterns. Experiments with type-directed programming will be included to better understand its role in programming in the context of object-oriented languages.

PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH

Note:  When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

Stephanie Weirich "RepLib: A library for derivable type classes" Haskell Workshop , 2006 , p.1
Stephanie Weirich "Type-Safe Runtime Polytypic Programming" Journal of Functional Programming , v.16 , 2006 , p.681
Dimitrios Vytiniotis and Stephanie Weirich "Free theorems and runtime type representations" Mathematical Foundations of Programming Semantics (MFPS XXIII) , v.XXIII , 2007 , p.357
Dimitrios Vytiniotis, Stephanie Weirich, and Simon L. Peyton Jones "Boxy type inference for higher-rank types and impredicativity" International Conference on Functional Programming (ICFP) , 2006 , p.251
Dimitrios Vytiniotis, Stephanie Weirich, and Simon Peyton Jones "FPH: First-class polymorphism for Haskell" ICFP 2008: Proceedings of the 2008 SIGPLAN International Conference on Functional Programming , 2008 , p.295 http://doi.acm.org/10.1145/1411204.1411246
Geoffrey Washburn and Stephanie Weirich "Good Advice for Type-directed Programming: Aspect-oriented Programming and Extensible Generic Functions" Workshop on Generic Programming (WGP) , 2006 , p.33
Jones, SP; Vytiniotis, D; Weirich, S; Shields, M "Practical type inference for arbitrary-rank types" JOURNAL OF FUNCTIONAL PROGRAMMING , v.17 , 2007 , p.1 View record at Web of Science 10.1017/S095679680600603
Simon L. Peyton Jones, Dimitrios Vytiniotis, Stephanie Weirich, and Geoffrey Washburn "Simple unification-based type inference for GADTs" International Conference on Functional Programming (ICFP) , 2006 , p.50

Please report errors in award information by writing to: awardsearch@nsf.gov.

Print this page

Back to Top of page