skip to main content
10.1145/2637066.2637073acmconferencesArticle/Chapter ViewAbstractPublication PagesecoopConference Proceedingsconference-collections
tutorial

Towards Type-Safe JCop: A type system for layer inheritance and first-class layers

Published:28 July 2014Publication History

ABSTRACT

This paper describes a type system for JCop, which is an extension of Java with language mechanisms for context-oriented programming. A simple type system as in Java, however, is not sufficient to prevent errors due to the absence of invoked methods because interfaces of objects can change at run time by dynamic layer composition, a characteristic feature of context-oriented programming. Igarashi, Hirschfeld, and Masuhara have studied a type system for dynamic layer composition, but their type system is not directly applicable to JCop due to JCop-specific features such as layer inheritance, first-class layers, and declarative layer composition. We discuss how their type system can be extended to these language features.

References

  1. M. Appeltauer and R. Hirschfeld. The JCop language specification. Technical report, HPI, University of Potsdam, 2012.Google ScholarGoogle Scholar
  2. M. Appeltauer, R. Hirschfeld, and J. Lincke. Declarative layer composition with the JCop programming language. Journal of Object Technology, 12, 2013.Google ScholarGoogle Scholar
  3. N. Cardozo, S. González, K. Mens, R. Van Der Straeten, and T. D'Hondt. Modeling and analyzing self-adaptive systems with context petri nets. In Proc. of TASE, pages 191--198. IEEE, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Costanza and T. D'Hondt. Feature descriptions for context-oriented programming. In SPLC (2), pages 9--14, 2008.Google ScholarGoogle Scholar
  5. R. Hirschfeld, P. Costanza, and O. Nierstrasz. Context-oriented programming. Journal of Object Technology, 2008.Google ScholarGoogle Scholar
  6. R. Hirschfeld, A. Igarashi, and H. Masuhara. ContextFJ: A minimal core calculus for context-oriented programming. In Proc. of the FOAL2011, pages 19--23, Mar. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Igarashi, R. Hirschfeld, and H. Masuhara. A type system for dynamic layer composition. In Proc. of FOOL, Oct. 2012.Google ScholarGoogle Scholar
  8. A. Igarashi, B. C. Pierce, and P. Wadler. Featherweight Java: A minimal core calculus for Java and GJ. ACM TOPLAS, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. H. Inoue. A proof of soundness of type system for dynamic layer composition. Undergraduate honors thesis, Kyoto University, 2013. In Japanese.Google ScholarGoogle Scholar
  10. T. Kamina, T. Aotani, and A. Igarashi. On-demand layer activation for type-safe deactivation. In Proc. of COP'14, Uppsala, Sweden, July 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. T. Kamina, T. Aotani, and H. Masuhara. EventCJ: a context-oriented programming language with declarative event-based context transition. In Proc. of ACM AOSD, pages 253--264. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. An Overview of AspectJ. In Proc. of ECOOP'01, volume 2072 of Springer LNCS, pages 327--353, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Towards Type-Safe JCop: A type system for layer inheritance and first-class layers

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        COP '14: Proceedings of 6th ACM International Workshop on Context-Oriented Programming
        July 2014
        52 pages
        ISBN:9781450328616
        DOI:10.1145/2637066

        Copyright © 2014 ACM

        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 the author(s) 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].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 28 July 2014

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • tutorial
        • Research
        • Refereed limited

        Acceptance Rates

        COP '14 Paper Acceptance Rate8of9submissions,89%Overall Acceptance Rate17of25submissions,68%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader