This is the companion to the proceedings of the 13th International Conference on Modularity (Modularity'14, formerly AOSD) in Lugano, Switzerland. This year's conference continues the tradition of being the premier international conference on modularity in software systems.
Modularity'14 addresses all aspects of modularity, abstraction, and separation of concerns as they pertain to software, including new forms, uses, and analysis of modularity, along with the costs and benefits, and tradeoffs involved in their application. The broadening in scope of the conference is also reflected in the change of its name: the International Conference on Aspect-Oriented Software Development (AOSD) has evolved to become the International Conference on Modularity.
Modularity provides the international computer science research community and its many subdisciplines (including software engineering, languages, and computer systems) with unique opportunities to come together to share and discuss perspectives, results, and visions with others interested in modularity as well as in the languages, development methods, architectures, algorithms, and other technologies organized around this fundamental concept.
In addition to two main technical parts -- Research Results and Modularity Visions -- Modularity'14 hosts invited keynote talks, an ACM Student Research Competition (SRC), demonstrations, and the 13th Workshop on Foundations of Aspect-Oriented Languages (FOAL'14). The companion to the proceedings archives the keynote abstracts, as well as the papers accompanying the SRC presentations and the demonstrations.
The Modularity'14 program includes three keynotes: Julia Lawall from Inria on Coccinelle: Reducing the Barriers to Modularization in a Large C Code Base, Eelco Visser from TU Delft on Separation of Concerns in Language Definition, and Thomas Würthinger from Oracle Labs on Graal and Truffle: Modularity and Separation of Concerns as Cornerstones for Building a Multipurpose Runtime.
The SRC hosted by Modularity'14, sponsored by Microsoft Research, is an internationally recognized venue that enables undergraduate and graduate students to experience the research world, share their research results with other students and Modularity'14 attendees, and compete for prizes. The SRC has the goal to facilitate students' interaction with researchers and industry practitioners, providing both sides with the opportunity to learn of ongoing, current research. Additionally, the SRC allows students to gain experience with both formal presentations and evaluations.
Demonstrations provide the attendees with some technical insights on tools exploiting or supporting modularity and aspect-oriented development. The attendees have also the opportunity to interact with the tool developers and, in turn, the developers gain excellent opportunities to increase the visibility and impact of their work. Modularity'14 sought high-quality proposals for its demonstration track. Five demonstrations were selected on the basis of technical merit, novelty, relevance to the Modularity community, and feasibility of presentation.
The workshop program has a long tradition in the Modularity conference series. This year, the call for workshop proposals invited, as usual, submissions on a broad range of topics related to modularity. As the only workshop in 2014, FOAL is flying the flag for the workshop program.
Proceeding Downloads
Separation of concerns in language definition
Effectively applying linguistic abstraction to emerging domains of computation requires the ability to rapidly develop software languages. However, a software language is a complex software system in its own right and can take significant effort to ...
Graal and truffle: modularity and separation of concerns as cornerstones for building a multipurpose runtime
Multi-language runtimes providing simultaneously high performance for several programming languages still remain an illusion. Industrial-strength managed language runtimes are built with a focus on one language (e.g., Java or C#). Other languages may ...
Coccinelle: reducing the barriers to modularization in a large C code base
Coccinelle is a program matching and transformation tool for C code that has been extensively used for bug finding and evolutions in the Linux kernel. In this paper, we show how Coccinelle can be used in maintaining and improving the modularity of ...
Concolic testing with static analysis for JavaScript applications
JavaScript has given a great deal of impacts on the software industry. However, developers test JavaScript applications only with manually constructed test cases, which makes it difficult and time-consuming to obtain reasonable test coverage. Because of ...
JavaScript API misuse detection by using typescript
Static analysis of JavaScript programs to detect errors in them is a challenging task. Especially when the program imports massive JavaScript libraries such as jQuery and MooTools, analyzing the whole program and the libraries is expensive and extremely ...
iArch: an IDE for supporting fluid abstraction
Abstraction plays an important role in software development. Although it is preferable to firmly separate design from its implementation, this separation is not easy because an abstraction level tends to change during the progress of software ...
Finding bugs in program generators by dynamic analysis of syntactic language constraints
Program generators and transformations are hard to implement correctly, because the implementation needs to generically describe how to construct programs, for example, using templates or rewrite rules. We apply dynamic analysis to program generators in ...
Modularizing crosscutting contracts with AspectJML
- Henrique Rebêlo,
- Gary T. Leavens,
- Mehdi Bagherzadeh,
- Hridesh Rajan,
- Ricardo Lima,
- Daniel M. Zimmerman,
- Márcio Cornélio,
- Thomas Thüm
It is claimed in the literature that the contracts of a system present crosscutting structure during its realization. In this context, there has been attempts to improve separation of crosscutting contracts, e.g. by aspect-oriented programming and ...
TouchRAM: a multitouch-enabled software design tool supporting concern-oriented reuse
TouchRAM is a multitouch-enabled tool for agile software design modelling aimed at developing scalable and reusable software design models. This paper primarily focusses on the new features that were added to TouchRAM to provide initial support for ...
Neverlang 2: a framework for modular language implementation
Neverlang 2 is a JVM-based framework for language development that emphasizes code reuse through composition of language features. This paper is aimed at showing how to develop extensible, custom languages using Neverlang's component-based model of ...
Index Terms
- Proceedings of the companion publication of the 13th international conference on Modularity
Recommendations
Acceptance Rates
Year | Submitted | Accepted | Rate |
---|---|---|---|
MODULARITY '14 | 60 | 21 | 35% |
AOSD '12 | 79 | 20 | 25% |
Overall | 139 | 41 | 29% |