The proceedings contain 110 papers. The topics discussed include: making frameworks work: a project retrospective;once upon a time, like never before: the challenge of telling the next story;second life: the world'...
详细信息
ISBN:
(纸本)9781595938657
The proceedings contain 110 papers. The topics discussed include: making frameworks work: a project retrospective;once upon a time, like never before: the challenge of telling the next story;second life: the world's biggest programming environment;collaboration and telecollaboration in design;Elephant 2000: a programming language based on speech acts;precise software documentation: making object-orientation work better;context, perspective, and programs;complexity management;1st international workshop on in process software engineering measurement and analysis (ISEMA 2007);the first international workshop on patterns languages: addressing challenges (PLAC 2007);fifth international workshop on SOA & Web services best practices;and the 7th OOPSLA workshop on domain-specific modeling.
The proceedings contain 39 papers. The topics discussed include: variant path types for scalable extensibility;dependent classes;component nextgen: a sound and expressive component framework for Java;user-changeable v...
详细信息
ISBN:
(纸本)9781595937865
The proceedings contain 39 papers. The topics discussed include: variant path types for scalable extensibility;dependent classes;component nextgen: a sound and expressive component framework for Java;user-changeable visibility resolving unanticipated name clashes in traits;tractions with isolation and cooperation;granting Java interface developers their wishes;the justadd extensible Java compiler;streamflex: high-throughput stream programming in Java;the causes of bloat, the limits of health;notation and representation in collaborative object-oriented design: an observational study;WebRB: evaluating a visual domain-specific language for building relational web-application;modular typestate checking of aliased objects;and modular verification of higher-order methods with mandatory calls specified by model programs.
The advantage of textual use-cases is that they can be easily understood by stakeholders and domain experts. However, since use-cases typically rely on a natural language, they cannot be directly subject to a formal v...
详细信息
The advantage of textual use-cases is that they can be easily understood by stakeholders and domain experts. However, since use-cases typically rely on a natural language, they cannot be directly subject to a formal verification. In this paper, we present the FOAM method which features simple user-definable annotations, inserted into a use-case to make its semantics more suitable for verification. Subsequently a model-checking tool verifies temporal invariants associated with the annotations. This way, FOAM allows for harnessing the benefits of model-checking while still keeping the use-cases understandable for non-experts.
Parallel And Distributed Simulations (PADS) become more and more spread since scientists always want more accurate results in the shortest time. PADS are often sensitive to several parameters, and when they own a stoc...
详细信息
Parallel And Distributed Simulations (PADS) become more and more spread since scientists always want more accurate results in the shortest time. PADS are often sensitive to several parameters, and when they own a stochastic component, one has to ensure he knows how to correctly deal with randomness in a parallel application. This point can appear to be very tricky for non-experts, who might be tempted to move this part of the simulation aside. Several software efforts have been produced in various programming languages to help developers handle pseudorandom streams partitioning in PADS. However, these tools remain third-party libraries that need to be integrated in already existing applications, and that might be hardly swappable. The latest release of the Java Development Kit (JDK 7) tries to tackle this problem with a new class called ThreadLocalRandom. The latter is in charge of safe pseudorandom number generation across Java threads. The present work studies the pros and cons of this approach, and introduces ThreadLocalMRG32k3a, an alternative to ThreadLocalRandom that shows better results in terms of generation speed and statistical quality. ThreadLocalMRG32k3a respects the same Application programming Interface (API) as ThreadLocalRandom, thus enabling clients to use it in place of its JDK counterpart at no cost.
The proceedings contain 19 papers. The topics discussed include: WiKi-based framework for blended learning;structuring WiKi revision history;WiKiCreole: a common WiKi markup;do as I do: authorial leadership in Wikiped...
详细信息
ISBN:
(纸本)9781595938619
The proceedings contain 19 papers. The topics discussed include: WiKi-based framework for blended learning;structuring WiKi revision history;WiKiCreole: a common WiKi markup;do as I do: authorial leadership in Wikipedia;cooperation and quality in Wikipedia;connecting Wikis and natural language processing systems;on-line collaborative software development via WiKi;building collaborative capacities in learners;a framework for studying the use of Wikis in knowledge work using client-side access data;constructing teat: Wiki as a toolkit for (collaborative?) learning;conceptual enhancement via textual plurality: a pedagogical WiKi bow towards collaborative structuration;recommenders everywhere: the WiKiLens community-maintained recommender system;and Wikis in education: in public better?.
The proceedings contain 39 papers. The topics discussed include: the JastAdd extensible Java compiler;jeannie: granting Java native interface developers their wishes;ILEA: inter-language analysis across Java and C;sta...
The proceedings contain 39 papers. The topics discussed include: the JastAdd extensible Java compiler;jeannie: granting Java native interface developers their wishes;ILEA: inter-language analysis across Java and C;statistically rigorous Java performance evaluation;MicroPhase: an approach to proactively invoking garbage collection for improved performance;variant path types for scalable extensibility;component NextGen: a sound and expressive component framework for Java;User-changeable visibility: resolving unanticipated name clashes in traits;transactions with isolation and cooperation;streamflex: high-throughput stream programming in Java;can programming be liberated from the two-level style? multi-level programming with DeepJava;notation and representation in collaborative object-oriented design: an observational study;and WebRB: evaluating a visual domain-specific language for building relational web-applications.
More and more aspects of concurrency and concurrent programming are becoming part of mainstream programming and software engineering, due to several factors such as the widespread availability of multi-core/parallel a...
详细信息
More and more aspects of concurrency and concurrent programming are becoming part of mainstream programming and software engineering, due to several factors such as the widespread availability of multi-core/parallel architectures and Internet-based systems. This leads to the extension of mainstream object-orientedprogramming languages and platforms - Java is a main example - with libraries providing fine-grained mechanisms and idioms to support concurrent programming, in particular for building efficient programs. Besides this fine-grained support, a main research goal in this context is to devise higher-level, coarse-grained abstractions that would help building concurrent programs, as pure object-oriented abstractions help building large component-based programs. To this end, in this paper we present simpA, a Java-based framework that provides programmers with agent-oriented abstractions on top of the basic 00 layer, as a means to organize and structure concurrent applications. We first describe the application programming interface (API) and annotation framework provided to Java programmers for building simpA applications, and then we discuss the main features of the approach from a software engineering point of view, by showing some programming examples. Finally, we define an operational semantics formalizing the main aspects of this programming model. (C) 2010 Elsevier B.V. All rights reserved.
We propose a real-time machine translation system that allows users to select a news category and to translate the related live news articles from Arabic, Czech, Danish, Farsi, French, German, Italian, Polish, Portugu...
详细信息
ISBN:
(纸本)9781622765003
We propose a real-time machine translation system that allows users to select a news category and to translate the related live news articles from Arabic, Czech, Danish, Farsi, French, German, Italian, Polish, Portuguese, Spanish and Turkish into English. The Moses-based system was optimised for the news domain and differs from other available systems in four ways: (1) News items are automatically categorised on the source side, before translation; (2) Named entity translation is optimised by recognising and extracting them on the source side and by re-inserting their translation in the target language, making use of a separate entity repository; (3) News titles are translated with a separate translation system which is optimised for the specific style of news titles; (4) The system was optimised for speed in order to cope with the large volume of daily news articles.
Software construction today often involves the use of large frameworks. The challenge in this type of programming is that object-oriented frameworks tend to grow exceedingly intricate;they spread functionality among n...
详细信息
ISBN:
(纸本)9781450309400
Software construction today often involves the use of large frameworks. The challenge in this type of programming is that object-oriented frameworks tend to grow exceedingly intricate;they spread functionality among numerous classes, and any use of the framework requires knowledge of many interacting components. We present a system named MATCHMAKER that from a simple query synthesizes code that interacts with the framework. The query consists of names of two framework classes, and our system produces code enabling interaction between them. MATCHMAKER relies on a database of dynamic program traces called DELIGHT that uses novel abstraction-based indexing techniques to answer queries about the evolution of heap connectivity in a matter of seconds. The paper evaluates the performance and effectiveness of MATCHMAKER on a number of benchmarks from the Eclipse framework. The paper also presents the results of a user study that showed a 49% average productivity improvement from the use of our tool.
Hybrid partial evaluation (HPE) is a pragmatic approach to partial evaluation that borrows ideas from both online and offline partial evaluation. HPE performs offline-style specialization using an online approach with...
详细信息
ISBN:
(纸本)9781450309400
Hybrid partial evaluation (HPE) is a pragmatic approach to partial evaluation that borrows ideas from both online and offline partial evaluation. HPE performs offline-style specialization using an online approach without static binding time analysis. The goal of HPE is to provide a practical and predictable level of optimization for programmers, with an implementation strategy that fits well within existing compilers or interpreters. HPE requires the programmer to specify where partial evaluation should be applied. It provides no termination guarantee and reports errors in situations that violate simple binding time rules, or have incorrect use of side effects in compile-time code. We formalize HPE for a small imperative object-oriented language and describe Civet, a straightforward implementation of HPE as a relatively simple extension of a Java compiler. Code optimized by Civet performs as well as the output of a state-of-the-art offline partial evaluator.
暂无评论