Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1509837.1509839acmconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
research-article

A type system for functional traversal-based aspects

Published: 02 March 2009 Publication History

Abstract

We present a programming language model of the ideas behind Functional Adaptive Programming (AP-F) and our Java implementation, DemeterF. Computation in AP-F is encapsulated in sets of functions that implement a fold over a data structure with the help of a generic traversal. In this paper we define the syntax, semantics, and typing rules of a simple AP-F model, together with a proof of soundness that guarantees that traversal expressions result in a value of the expected type. Applying a function set to a different structure can then be statically checked to eliminate some runtime tests and sources of program errors.

References

[1]
G. Bruns, R. Jagadeesan, A. Jeffrey, and J. Riely. mu-abc: A minimal aspect calculus. In Proceedings of the 2004 International Conference on Concurrency Theory, pages 209--224. Springer-Verlag, 2004.
[2]
B. Chadwick. DemeterF: The functional adaptive programming library. Website, 2008. http://www.ccs.neu.edu/home/chadwick/demeterf/.
[3]
B. Chadwick and K. Lieberherr. Functional Adaptive Programming. Technical Report NU-CCIS-08-75, CCIS/PRL, Northeastern University, Boston, October 2008.
[4]
M. Flatt, S. Krishnamurthi, and M. Felleisen. Classes and mixins. In POPL, pages 171--183. ACM Press, 1998.
[5]
A. Igarashi, B. Pierce, and P. Wadler. Featherweight java: A minimal core calculus for java and gj. In TOPLAS, pages 132--146, 1999.
[6]
R. Jagadeesan, A. Jeffrey, and J. Riely. A calculus of untyped aspect-oriented programs. In ECOOP, pages 54--73, 2003.
[7]
F. Kammüller and M. Voesgen. Towards type safety of aspect-oriented languages. In AOSD 2006, FOAL Workshop, 2009.
[8]
K. J. Lieberherr. Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns. PWS Publishing Company, Boston, 1996. 616 pages, ISBN 0-534-94602-X.
[9]
H. Masuhara and G. Kiczales. Modeling crosscutting in aspect-oriented mechanisms. In ECOOP, pages 2--28, 2003.
[10]
R. Milner, M. Tofte, and D. Macqueen. The Definition of Standard ML. MIT Press, Cambridge, MA, USA, 1997.
[11]
J. Palsberg and M. I. Schwartzbach. Object-oriented type inference. In OOPSLA, pages 146--161, New York, NY, USA, 1991. ACM.
[12]
The Demeter Group. The DemeterJ website. http://www.ccs.neu.edu/research/demeter, 2007.
[13]
D. Walker, S. Zdancewic, and J. Ligatti. A theory of aspects. In ICFP, pages 127--139, New York, NY, USA, 2003. ACM.
[14]
M. Wand, G. Kiczales, and C. Dutchyn. A semantics for advice and dynamic join points in aspect-oriented programming. TOPLAS, 26(5):890--910, 2004.
[15]
A. K. Wright and M. Felleisen. A syntactic approach to type soundness. Information and Computation, 115:38--94, 1994.

Cited By

View all
  • (2010)Weaving generic programming and traversal performanceProceedings of the 9th International Conference on Aspect-Oriented Software Development10.1145/1739230.1739238(61-72)Online publication date: 15-Mar-2010
  • (2009)Controlled evolution of adaptive programsProceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops10.1145/1595808.1595826(89-98)Online publication date: 24-Aug-2009

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
March 2009
42 pages
ISBN:9781605584522
DOI:10.1145/1509837
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 02 March 2009

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. adaptive programming
  2. functional aspects
  3. traversals
  4. type soundness

Qualifiers

  • Research-article

Conference

AOSD '09

Acceptance Rates

Overall Acceptance Rate 5 of 6 submissions, 83%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2010)Weaving generic programming and traversal performanceProceedings of the 9th International Conference on Aspect-Oriented Software Development10.1145/1739230.1739238(61-72)Online publication date: 15-Mar-2010
  • (2009)Controlled evolution of adaptive programsProceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops10.1145/1595808.1595826(89-98)Online publication date: 24-Aug-2009

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media