Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1294325acmconferencesBook PagePublication PagespppjConference Proceedingsconference-collections
PPPJ '07: Proceedings of the 5th international symposium on Principles and practice of programming in Java
ACM2007 Proceeding
  • General Chair:
  • Vasco Amaral
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
PPPJ07: 5th International Conference on the Principles of Programming in Java Lisboa Portugal September 5 - 7, 2007
ISBN:
978-1-59593-672-1
Published:
05 September 2007
Sponsors:
RidgeSoft, YDreams, AMD 64 Opteron, FUNDAÇÃO Luso-Americana, ACM, Sun Microsystems, Almada Camara Municipal, GFI, ParaRede Business Upgrade, Câmara Municipal de Palmela, IBM

Bibliometrics
Skip Abstract Section
Abstract

Welcome to the 2007 International Conference on the Principles and Practice of Programming in Java (PPPJ 2007). Thank you for attending, on behalf of the Organizing and Steering Committees. The PPPJ conference is an excellent forum for presentation of research results and discussion of issues related to the Java platform and language.

This year, 58 papers were submitted for consideration by the conference. After careful review by the Program Committee members and other reviewers, the Committee accepted 19 full papers and 5 short papers. The topics covered by the papers include a broad range of subjects, i.e., virtual machines, compilation, language design, internet programming, software engineering, generative programming, and Java applications.

Skip Table Of Content Section
SESSION: Experiences using Java
Article
Extending and contributing to an open source web-based system for the assessment of programming problems

This paper describes the development of a web-based programming and assessment environment for use in supporting programming fundamentals courses (CS1, CS2) taught in Java. This environment is currently linked with WeBWorK, an open source web-based ...

Article
Feasibility and benefits of migrating towards JEE: a real life case

In this paper we describe CNR's experience in migrating its central administration information systems from proprietary platforms to JEE. In particular, we will show that in our case this open standard allowed for smooth migration, seamless integration ...

Article
A Java-based science portal for neutron scattering experiments

The Spallation Neutron Source (SNS) is a state-of-the-art neutron scattering facility recently commissioned by the US Department of Energy (DOE). The neutron beam produced at SNS will have an intensity that is an order of magnitude higher than existing ...

Article
The design of a Java phone programming environment

Mobile phones present unique challenges to the implementation of a self-contained programming environment. The paper details the design of the M scripting environment for mobile phones. The goal of the environment is to make the breadth and power of the ...

SESSION: Software engineering and tools
Article
Searching the library and asking the peers: learning to use Java APIs on demand

The existence of large API libraries contributes significantly to the programming productivity and quality of Java programmers. The vast number of available library APIs, however, presents a learning challenge for Java programmers. Most Java programmers ...

Article
A software metric for coherence of class roles in Java programs

The purpose of software metrics is to measure the quality of programs. The results can be for example used to predict maintenance costs or improve code quality. An emerging view is that if software metrics are going to be used to improve quality, they ...

SESSION: Language design and generative programming
Article
Bridging Java and AspectJ through explicit join points

Through AspectJ, aspect-oriented programming (AOP) is becoming of increasing interest and availability to Java programmers as it matures as a methodology for improved software modularity via the separation of cross-cutting concerns. AOP proponents often ...

Article
Typeless programming in Java 5.0 with wildcards

With the introduction of Java 5.0 [8] the type system has been extended by parameterized types, type variables, type terms, and wildcards. As a result very complex types can arise. The term Vector<? super Vector<? extends List<Integer>>> is for example ...

Article
Featherweight Java with multi-methods

Multi-methods (collections of overloaded methods associated to the same message, whose selection takes place dynamically instead of statically as in standard overloading) are a useful mechanism since they unleash the power of dynamic binding in object-...

Article
FSMC+, a tool for the generation of Java code from statecharts

ProVotE is a two-phase project aiming at actuating art. 84 of law 2 -- 5/3/2003 of the Autonomous Province of Trento (Italy), which promotes the introduction of e-voting systems for the next provincial elections in Trentino (Nov. 2008).

During the first ...

SESSION: Internet programming
Article
A cross-language framework for developing AJAX applications

AJAX (Asynchronous JavaScript And XML) applications have received wide-spread attention as a new way to develop highly interactive web applications. Breaking with the complete-page-reload paradigm of traditional web applications, AJAX applications rival ...

Article
A Java toolkit for the design and the automatic checking of server architectures

This paper presents Saburo, a Java toolkit that generates, from a single Java specification, Java Internet server implementations, together with their formal model that can be automatically checked using the model checker SPIN. This approach ensures the ...

SESSION: Virtual machines and compilation
Article
Array bounds check elimination for the Java HotSpot™ client compiler

Whenever an array element is accessed, Java virtual machines execute a compare instruction to ensure that the index value is within the valid bounds. This reduces the execution speed of Java programs. Array bounds check elimination identifies situations ...

Article
Advanced Java bytecode instrumentation

Bytecode instrumentation is a valuable technique for transparently enhancing virtual execution environments for purposes such as monitoring or profiling. Current approaches to bytecode instrumentation either exclude some methods from instrumentation, ...

Article
Implementing fast JVM interpreters using Java itself

Most Java Virtual Machines (JVMs) are themselves written in unsafe languages, making it unduly difficult to build trustworthy and safe JVM platforms. While some progress has been made on removing compilers from the trusted computing base (using ...

Article
A DSL approach for object memory management of small devices

Small devices have a specific hardware configuration. In particular, they usually include several types of memories (typically ROM, internal and external RAM, Flash memory) different in quantities and properties. We propose an object memory management ...

SESSION: Concurrency
Article
The potential of trace-level parallelism in Java programs

The exploitation of parallelism among traces, i.e. hot paths of execution in programs, is a novel approach to the automatic parallelization of Java programs and it has many advantages. However, to date, the extent to which parallelism exists among ...

Article
Supporting exception handling for futures in Java

A future is a simple and elegant construct that programmers can use to identify potentially asynchronous computation and to introduce parallelism into serial programs. In its recent 5.0 release, Java provides an interface-based implementation of futures ...

Article
simpA: an agent-oriented approach for prototyping concurrent applications on top of Java

More and more aspects of concurrency and concurrent programming are becoming part of mainstream programming and software engineering, as a result of several factors, such as the widespread availability of multi-core / parallel architectures and Internet-...

SESSION: Short papers
Article
A Prolog-oriented extension of Java programming based on generics and annotations

Although object-oriented languages are nowadays the mainstream of application development, several research contexts suggest that a multi-paradigm approach is worth pursuing. In particular, a declarative, logic-based paradigm could fruitfully add ...

Article
Towards intelligent analysis techniques for object pretenuring

Object pretenuring involves the identification of long-lived objects at or before their instantiation. It is a key optimization for generational garbage collection systems, which are standard in most high performance Java virtual machines. This paper ...

Article
The potential of speculative class-loading

Platforms such as Java provide many software engineering benefits. However, these benefits often come at the cost of significant runtime overhead. In this paper we study the potential for hiding some of that overhead by employing speculative execution ...

Article
Redundant boxing elimination by a dynamic compiler for Java

Auto-boxing improves code readability by eliminating the need for explicit boxing code, but it does not improve performance, because it does not eliminate boxing code but inserts the code implicitly. Current auto-boxing implementations try to improve ...

Article
Adaptive inlining and on-stack replacement in the CACAO virtual machine

Method inlining is a well-known and effective optimization technique for object-oriented programs. In the context of dynamic compilation, method inlining can be used as an adaptive optimization in order to eliminate the overhead of frequently executed ...

WORKSHOP SESSION: Ja4Mo: Java for mobility workshop
Article
J2MEMicroDB: an open source distributed database engine for mobile applications

Mobile distributed applications must be able to work offline when no network connection is available, or simply to spare bandwidth or money. To do so the mobile client must be able to store and handle structured data. Java 2 Micro Edition (J2ME) does ...

Article
A serialization based approach for strong mobility of shared object

Mobility becomes very important in distributed Computing. Thus, many works deal with process strong mobility, but few of them deal with mobility of shared objects. In this paper, we present a mobility approach based on source code transformation, which ...

Article
A framework for mobile Java applications

We present the Dynamic Theory Execution (DynamiTE) framework for creating concurrent object-oriented applications, with semantics grounded in a process calculus. DynamiTE allows a system to be constructed as a series of distinct mobile components called ...

Article
A Java mobile-enabled environment to access adaptive services

Today information systems provide services which may be accessed through various types of devices and/or networks and from different locations. Services should be adapted at runtime to the features of the requiring device. Moreover, users may specify ...

Contributors
  • NOVA University of Lisbon
  1. Proceedings of the 5th international symposium on Principles and practice of programming in Java

      Recommendations

      Acceptance Rates

      Overall Acceptance Rate 29 of 58 submissions, 50%
      YearSubmittedAcceptedRate
      PPPJ '16311445%
      PPPJ '15271556%
      Overall582950%