ACM SIGPLAN Symposium on Library-Centric Software Design LCSD'07 |
|
A symposium on October 21, 2007, co-located with the
Object-Oriented Programming, Systems, Languages and Applications (OOPSLA'07) conference
in Montréal October 21-25, 2007.
Past editions of the LCSD: LCSD'05, LCSD'06.
The program of the symposium is now available.
Registering for the symposium
Registration for OOPSLA and LCSD is open and the last day for advanced registration reduced rates is September 13. There is a checkbox for LCSD registration inside the OOPSLA registration form. The symposium is open to everyone, no paper is required for participating.
Keynote address
The full-day symposium will begin with an invited talk by
Doug Lea.
Engineering java.util.concurrent
Creating open-source core libraries is a wide-ranging effort, spanning algorithm design, API design, tuning performance for broad-spectrum use, writing code that serves as a model for other programmers, writing specifications and documentation, managing release and maintenance, teaching programmers how to use components effectively, and working with those developing tools to help improve usability and reduce errors. None of these can be done in a vacuum; all require teamwork. This talk will present some examples of each facets encountered during the ongoing development of the Java concurrency libraries.
Bio: Doug Lea is a professor of Computer Science at the State University of New York at Oswego. He is author of the book ``Concurrent Programming in Java'', and co-author of the text ``Object-Oriented System Development''. He is the author of several widely used software packages and components, as well as articles, reports, and standardization efforts dealing with object oriented software development including those on specification, design and implementation techniques, distributed, concurrent, and parallel object systems, and software reusability.
Goals and activities
LCSD is a scientific forum for presenting original research in the design, implementation, and evaluation of software libraries. Other major activities include the identification of open questions specific to library research and the discussion of a strategic plan for establishing library research as a field. The outcome of the symposium is a combination of research contributions and specific next steps for improving the infrastructure for library research.
Participants are encouraged to read the accepted submissions beforehand. The technical presentations, although based on the accepted papers, should not provide mere summaries of the papers. Instead, authors are encouraged to use their presentation slots (20 + 5 mins) to bring up topics for discussion.
The technical presentations are mixed with scientific and organizational discussions. The discussions aim at furthering the topics of the presentations, thus their agenda will be publicly discussed among the participants and then posted on the website of the symposium. All participants are expected to come prepared with their tentative answers or thoughts.
Program
The program for the symposium is as follows:| 8:30-8:40 | Symposium organizers' Welcoming Remarks |
| Technical block 1: Testing and checking Chair: Frank Tip | 8:40-9:05 | Ciera Jaspan and Jonathan Aldrich: Checking Semantic Usage of Frameworks pdf |
| 9:05-9:20 | Danhua Shao, Sarfraz Khurshid and Dewayne Perry: Whispec: White-box Testing of Libraries Using Declarative Specifications pdf |
| 9:20-9:45 | Magne Haveraaen: Institutions, Property-Aware Programming and Testing pdf |
| 9:45-10:00 Break | |
| 10:00-11:00 | Keynote: Brian Goetz standing in for Doug Lea: Engineering java.util.concurrent |
| 11:00-11:30 Break | |
| 11:30-11:55 | Nicolas Juillerat: Enforcing Code Security in Database Web Applications Using Libraries with Object Models pdf |
| 12:00-13:30 Lunch | |
| Technical block 2: Language extensions as libraries Chair: Jaakko Jarvi | |
| 13:30-14:00 | Justin Gottschlich and Daniel Connors: DracoSTM: A Practical C++ Approach to Software Transactional Memory pdf |
| 14:00-14:30 | Kasper Osterbye: Design of a Class Library for Association Relationships pdf |
| Technical block 3: Library evolution Chair: Jeremy Siek | |
| 14:30-15:00 | Marcin Zalewski and Sibylle Schupp: C++ Concepts as Institutions. A Specification View on Concepts. pdf |
| 15:00-15:30 Break | |
| 15:30-15:55 | Stephane Vaucher and Houari Sahraoui: Do Software Libraries Evolve Differently than Applications? pdf |
| Technical block 4: Performance Chair: Sibylle Schupp | |
| 15:55-16:20 | Xiaolong Tang and Jaakko Jarvi: Concept-Based Optimization pdf |
| 16:20-16:45 | Qing Yi and R. Clint Whaley: Automated Transformation for Performance-Critical Kernels pdf |
Call for papers
Libraries are central to all major scientific, engineering, and business areas, yet the design, implementation, and use of libraries are underdeveloped arts. This symposium is one of the first steps in the process of placing all aspects of libraries on a sound technical and scientific basis through research into fundamental issues and documentation of best practices.
A software library is an organized collection of code with associated tools supporting programming in general or in specific domains, usually united by a specified set of principles and conventions. Most libraries are aimed at the use by several people and in different environments. The areas of software library research include
- Design and implementation of libraries
- Program and system design based on libraries
- Libraries supporting specific application domains, such as biology or banking
- Evolution, refactoring, and maintenance of libraries
- Empirical studies of library use
- Performance of libraries, including benchmarking and library-based optimizations
- Design of language facilities and tools in support of library definition and use
- Validation, debugging, and testing of libraries
- Extensibility, parameterization, and customization
- Distribution of libraries
- Specification of libraries and their semantics
- Usability for library users and developers
- Assessing quality of libraries
- Documentation and teaching of libraries
- Creating and supporting communities of library users
- Using several libraries in combination
We invite the submission of papers on software library research, including, but not limited to, the above list of topics. The papers should address issues important to libraries as a field, i.e., describe ideas or techniques that can be reused for libraries across problem domains and/or languages; they should refrain from merely describing a particular library, no matter how novel the choice of domain.
Authors should use the latest ACM SIGS conference style file (option 1). Submissions should be limited to 12 pages in this style.
The accepted papers will be published in the ACM proceedings for the symposium.
Important Dates
| Aug 5 | - | Submission of papers (new deadline!) |
| Sep 1 | - | Notification of acceptance |
| Sep 15 | - | Submission of final versions of the papers |
| Oct 21 | - | Symposium |
Submission procedure
Please submit your papers via the
electronic submission system here.
The organizers will also serve as program committee members.
Organizers
Primarily, the email address
lcsd07@cs.tamu.edu
should be used for questions addressed
to the organizers.
Program committee
Bio: Doug Lea is a professor of Computer Science at the State
University of New York at Oswego. He is author of the book
``Concurrent Programming in Java'', and co-author of the text
``Object-Oriented System Development''. He is the author of several
widely used software packages and components, as well as articles,
reports, and standardization efforts dealing with object oriented
software development including those on specification, design
and implementation techniques, distributed, concurrent, and
parallel object systems, and software reusability.