the proceedings contain 10 papers. the topics discussed include: an approach to modular object-orientedprogramming in language-driven development framework;Predicate-C - an efficient and generic runtime system for pr...
ISBN:
(纸本)9781450308946
the proceedings contain 10 papers. the topics discussed include: an approach to modular object-orientedprogramming in language-driven development framework;Predicate-C - an efficient and generic runtime system for predicate dispatch;application optimization when using gradual typing;economic utility theory for memory management optimization;reducing and eliding read barriers for concurrent garbage collectors;a tracing technique using dynamic bytecode instrumentation of Java applications and libraries at basic block level;reducing biased lock revocation by learning;pattern matching for object-like structures in the go programming language;and runtime feedback in a meta-tracing JIT for efficient dynamic languages.
the proceedings contain 7 papers. the topics discussed include: featherweight EventCJ: a core calculus for a context-oriented language with event-based per-instance layer transition;safer context (de)activation - thro...
ISBN:
(纸本)9781450308915
the proceedings contain 7 papers. the topics discussed include: featherweight EventCJ: a core calculus for a context-oriented language with event-based per-instance layer transition;safer context (de)activation - through the prompt-loyal strategy;a context management infrastructure with language integration support;JavaCtx: seamless toolchain integration for context-orientedprogramming;context-orientedprogramming for mobile devices: JCop on Android;implementing scoped method tracing with ContextJS;and CJAdviser: SMT-based debugging support for ContextJ*.
the proceedings contain 26 papers. the topics discussed include: a co-relational model of data for large shared data banks;an empirical study of object protocols in the wild;the beauty and the beast: separating design...
ISBN:
(纸本)9783642226540
the proceedings contain 26 papers. the topics discussed include: a co-relational model of data for large shared data banks;an empirical study of object protocols in the wild;the beauty and the beast: separating design from algorithm;using structure-based recommendations to facilitate discoverability in APIs;mining evolution of object usage;improving the tokenization of identifier names;revisiting information hiding: reflections on classical and nonclassical modularity;worlds: controlling the scope of side effects;can we avoid high coupling?;expressiveness, simplicity, and users;a refactoring constraint language and its application to Eiffel;types, regions, and effects for safe programming withobject-oriented parallel frameworks;tunable static inference for generic universe types;verifying multi-object invariants with relationships;and frequency estimation of virtual call targets for object-oriented programs.
the proceedings contain 25 papers. the topics discussed include: detecting missing method calls in object-oriented software;debugging model-transformation failures using dynamic tainting;automatically extracting class...
ISBN:
(纸本)3642141064
the proceedings contain 25 papers. the topics discussed include: detecting missing method calls in object-oriented software;debugging model-transformation failures using dynamic tainting;automatically extracting class diagrams from spreadsheets;the essence of JavaScript;verifying executable object-oriented specifications with separation logic;verifying generics and delegates;recency types for analyzing scripting languages;correct refactoring of concurrent Java code;programming coordinated behavior in Java;doubts about the positive impact of static type systems on programming tasks in single developer projects - an empirical study;a type system for data-centric synchronization;type-safe eventful sessions in Java;capabilities for uniqueness and borrowing;embedding languages without breaking tools;self-replicating objects for multicore platforms;and falling back on executable specifications.
We report on our ongoing research of an object-oriented language for a metaprogramming framework called Turbine. the paper describes structural elements of models, their relations and intended patterns of usage and th...
详细信息
We propose Featherweight EventCJ, which is a small calculus for context-oriented languages with event-based perinstance layer controls like EventCJ. It extends ContextFJ with stores, labels and transitions for modelin...
详细信息
Context-orientedprogramming is an emerging paradigm addressing at the language level the issue of dynamic software adaptation and modularization of context-specific concerns. In this paper we propose JAVACTX, a tool ...
详细信息
ISBN:
(纸本)9781450308915
Context-orientedprogramming is an emerging paradigm addressing at the language level the issue of dynamic software adaptation and modularization of context-specific concerns. In this paper we propose JAVACTX, a tool which employs coding conventions to generate the context-aware semantics for Java programs and subsequently weave it into the application. the contribution of JAVACTX is twofold: the design of a set of coding conventions which allow to write context-oriented software in plain Java and the concept of context-oriented semantics injection, which allows to introduce the context-aware semantics through standard aspect-orientedprogramming. Both of these points allow to seamless integrate JAVACTX in the existing industrial-strength appliances and so ease the development of context-oriented software in consolidated industrial settings.
Relationships capture the interplay between classes in object-oriented programs, and various extensions of object-orientedprogramming languages allow the programmer to explicitly express relationships. this paper dis...
详细信息
ISBN:
(纸本)9783642226557;9783642226540
Relationships capture the interplay between classes in object-oriented programs, and various extensions of object-orientedprogramming languages allow the programmer to explicitly express relationships. this paper discusses how relationships facilitate the verification of multi-object invariants. We develop a visible states verification technique for Rumer, a relationship-based programming language, and demonstrate our technique on the Composite pattern. the verification technique leverages the "Matryoshka Principle" embodied in the Rumer language: relationships impose a stratification of classes and relationships (with corresponding restrictions on writes to fields, the expression of invariants, and method invocations). the Matryoshka Principle guarantees the absence of transitive call-backs and restores a visible states semantics for multi-object invariants. As a consequence, the modular verification of multi-object invariants is possible.
this paper explores the feasibility of implementing pattern matching for the Go programming language. the design of pattern matching is taken from Scala, and reimplemented using Go's constructs and new language ex...
详细信息
As software evolves, so does the interaction between its components. But how can we check if components are updated consistently? By abstracting object usage into temporal properties, we can learn evolution patterns t...
详细信息
ISBN:
(纸本)9783642226557;9783642226540
As software evolves, so does the interaction between its components. But how can we check if components are updated consistently? By abstracting object usage into temporal properties, we can learn evolution patterns that express how object usage evolves over time. Software can then be checked against these patterns, revealing code that is in need of update: "Your check for isValidWidget() is now superseded by checkWidget()." In an evaluation of seven different versions of three open source projects, our LAMARCK tool was able to detect existing code issues with a precision of 33%-64% and to prevent such issues with a precision of 90%-100%.
暂无评论