Demo Data from EDBT 2026 / reviewers in the wild / expert
Jacques Noyé
dblp:n/JacquesNoye
· DBLP profile ↗
18ranked-venue papers
1as first author
0since 2021 · last 2012
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 15Artificial intelligence and machine learning · 2 · 1 first-authorTheory of computation · 2 · 1 first-authorSystems, architecture and hardware · 1Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Programming languages and type systems · 69% Requirements engineering and software design · 19% Software maintenance and evolution · 12% | |
| Network and information security
1 paper |
Systems and software security · 100% |
Topics — the 7 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
aspect-oriented programming |
0.2 | 2 | 2012 | Aspectizing Java Access Control · IEEE Trans. Software Eng. 2012 Partial behavioral reflection: spatial and temporal selection of reification · OOPSLA 2003 |
Requirements engineering and software design › separation of concerns
crosscutting concerns |
0.0 | 1 | 2012 | Aspectizing Java Access Control · IEEE Trans. Software Eng. 2012 |
Software maintenance and evolution
software modularization |
0.0 | 1 | 2012 | Aspectizing Java Access Control · IEEE Trans. Software Eng. 2012 |
Programming languages and type systems › metaprogramming
behavioral reflection |
0.0 | 1 | 2003 | Partial behavioral reflection: spatial and temporal selection of reification · OOPSLA 2003 |
Requirements engineering and software design
software architecture |
0.0 | 1 | 2000 | A Declarative Approach for Designing and Developing Adaptive Components · ASE 2000 |
Processor architecture and microarchitecture › instruction set architecture
tagged architecture |
0.0 | 1 | 1989 | KCM: A Knowledge Crunching Machine · ISCA 1989 |
Memory systems › memory management
memory management unit |
0.0 | 1 | 1989 | KCM: A Knowledge Crunching Machine · ISCA 1989 |
Methods — techniques the papers use, named apart from their topics
scoping strategies · 0.3dynamic aspect deployment · 0.3aspectj · 0.3reflection · 0.0hooksets · 0.0declarative programming · 0.0consistency checking · 0.0code generation · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2012 | Aspectizing Java Access ControlabstractIt is inevitable that some concerns crosscut a sizeable application, resulting in code scattering and tangling. This issue is particularly severe for security-related concerns: It is difficult to be confident about the security of an application when the implementation of its security-related concerns is scattered all over the code and tangled with other concerns, making global reasoning about security precarious. In this study, we consider the case of access control in Java, which turns out to be a crosscutting concern with a nonmodular implementation based on runtime stack inspection. We describe the process of modularizing access control in Java by means of Aspect-Oriented Programming (AOP). We first show a solution based on AspectJ, the most popular aspect-oriented extension to Java, that must rely on a separate automata infrastructure. We then put forward a novel solution via dynamic deployment of aspects and scoping strategies. Both solutions, apart from providing a modular specification of access control, make it possible to easily express other useful policies such as the Chinese wall policy. However, relying on expressive scope control results in a compact implementation, which, at the same time, permits the straightforward expression of even more interesting policies. These new modular implementations allowed by AOP alleviate maintenance and evolution issues produced by the crosscutting nature of access control. Rodolfo Toledo, Angel Núñez, Éric Tanter, Jacques Noyé |
IEEE Trans. Software Eng. | 4 |
| 2010 | Scoping strategies for distributed aspects
Éric Tanter, Johan Fabry, Rémi Douence, Jacques Noyé, Mario Südholt |
Sci. Comput. Program. | 4 |
| 2008 | An Event-Based Coordination Model for Context-Aware Applications
Angel Núñez, Jacques Noyé |
COORDINATION | 2 |
| 2008 | Dynamic AspectJabstractThis paper considers the difficulties linked to the static scheduling strategy of AspectJ and shows how to overcome them by turning to a more dynamic strategy, making it possible to order, cancel, and deploy aspects at runtime. We show that this more dynamic strategy can be obtained by a minor update of the semantics of AspectJ introducing the notion of current aspect group, that is, the aspects scheduled for the current join point. We show how to reflect this change at the language level and present a prototype of the resulting AspectJ variant, Dynamic AspectJ. This prototype reuses AspectJ to perform a first step of static weaving, which we complement by a second step of dynamic weaving, implemented through a thin interpretation layer. This can be seen as an interesting example of reconciling interpreters and compilers, the dynamic and the static world. Ali Assaf 0001, Jacques Noyé |
DLS | 2 |
| 2008 | Flexible metaprogramming and AOP in Java
Éric Tanter, Rodolfo Toledo, Guillaume Pothier, Jacques Noyé |
Sci. Comput. Program. | 4 |
| 2006 | Concurrent aspectsabstractAspect-Oriented Programming (AOP) promises the modularization of so-called crosscutting functionalities in large applications. Currently, almost all approaches to AOP provide means for the description of sequential aspects that are to be applied to a sequential base program. In particular, there is no formally-defined concurrent approach to AOP, with the result that coordination issues between aspects and base programs as well as between aspects cannot precisely be investigated.This paper presents Concurrent Event-based AOP (CEAOP), which addresses this issue. Our contribution can be detailed as follows. First, we formally define a model for concurrent aspects which extends the sequential Event-based AOP approach. The definition is given as a translation into concurrent specifications using Finite Sequential Processes (FSP), thus enabling use of the Labelled Transition System Analyzer (LTSA) for formal property verification. Further, we show how to compose concurrent aspects using a set of general composition operators. Finally, we sketch a Java prototype implementation for concurrent aspects, which generates coordination specific code from the FSP model defining the concurrent AO application. Rémi Douence, Didier Le Botlan, Jacques Noyé, Mario Südholt |
GPCE | 3 |
| 2005 | A Versatile Kernel for Multi-language AOP
Éric Tanter, Jacques Noyé |
GPCE | 2 |
| 2004 | Component specializationabstractComponent-Based Software Development (CBSD)is an attractive way to deliver generic executable pieces of program, ready to be reused in many different contexts. Component reuse is based on a black-box model that frees component consumers from diving into implementation details. Adapting a generic component to a particular context of use is then based on a parameterized interface that becomes a specific component wrapper at runtime. This shallow adaptation, which keeps the component implementation unchanged, is a major source of inefficiency. By building on top of well-known specialization techniques, it is possible to take advantage of the genericity of components and adapt their implementation to their usage context without breaking the black-box model. We illustrate these ideas on a simple component model, considering dual specialization techniques, partial evaluation and slicing. A key to not breaking encapsulation is to use specialization scenarios extended with assumptions on the required services and to package components as component generators. Gustavo J. Bobeff, Jacques Noyé |
PEPM | 2 |
| 2004 | Dynamic Configuration of Software Product Lines in ArchJava
Sebastian Pavel, Jacques Noyé, Jean-Claude Royer |
SPLC | 2 |
| 2003 | Partial behavioral reflection: spatial and temporal selection of reificationabstractBehavioral reflection is a powerful approach for adapting the behavior of running applications. In this paper we present and motivate partial behavioral reflection, an approach to more efficient and flexible behavioral reflection. We expose the spatial and temporal dimensions of such reflection, and propose a model of partial behavioral reflection based on the notion of hooksets. In the context of Java, we describe a reflective architecture offering appropriate interfaces for static and dynamic configuration of partial behavioral reflection at various levels, as well as Reflex, an open reflective extension for Java implementing this architecture. Reflex is the first extension that fully supports partial behavioral reflection in a portable manner, and that seamlessly integrates load-time and runtime behavioral reflection. The paper shows preliminary benchmarks and examples supporting the approach. The examples, dealing with the observer pattern and asynchronous communication via transparent futures, also show the interest of partial behavioral reflection as a tool for open dynamic Aspect-Oriented Programming. Éric Tanter, Jacques Noyé, Denis Caromel, Pierre Cointe |
OOPSLA | 2 |
| 2002 | Altering Java Semantics via Bytecode Manipulation
Éric Tanter, Marc Ségura-Devillechaise, Jacques Noyé, José M. Piquer |
GPCE | 3 |
| 2000 | A Declarative Approach for Designing and Developing Adaptive ComponentsabstractAn adaptive component is a component that is able to adapt its behavior to different execution contexts. Building an adaptive application is difficult because of component dependencies and the lack of language support. As a result, code that implements adaptation is often tangled, hindering maintenance and evolution. To overcome this problem, we propose a declarative approach to program adaptation. This approach makes the specific issues of adaptation explicit. The programmer can focus on the basic features of the application, and separately provide clear and concise adaptation information. Concretely, we propose adaptation classes, which enrich Java classes with adaptive behaviors. A dedicated compiler automatically generates Java code that implements the adaptive features. Moreover, these adaptation declarations can be checked for consistency to provide additional safety guarantees. As a working example throughout this paper, we use an adaptive sound encoder in an audio-conferencing application. We show the problems associated with a traditional implementation using design patterns, and how these problems are elegantly solved using adaptation classes. Philippe Boinot, Renaud Marlet, Jacques Noyé, Gilles Muller, Charles Consel |
ASE | 3 |
| 2000 | Towards Partially Evaluating Reflection in JavaabstractReflection plays a major role in the programming of generic applications. However, it introduces an interpretation layer which is detrimental to performance. A solution consists of relying on partial evaluation to remove this interpretation layer. This paper deals with improving a standard partial evaluator in order to handle the Java reflection API. The improvements basically consist of taking type information into account when distinguishing between static and dynamic data, as well as introducing two new specialization actions: reflection actions. Benchmarks using the serialization framework show the benefits of the approach. Mathias Braux, Jacques Noyé |
PEPM | 2 |
| 2000 | Accurate binding-time analysis for imperative languages: flow, context, and return sensitivity
Luke Hornof, Jacques Noyé |
Theor. Comput. Sci. | 2 |
| 1997 | Accurate Binding-Time Analysis For Imperative Languages: Flow, Context, and Return SensitivityabstractSince a binding-time analysis determines how an off-line partial evaluator will specialize a program, the accuracy of the binding-time information directly determines the degree of specialization. We have designed and implemented a binding-time analysis for an imperative language, and integrated it into our partial evaluator for C, called Tempo [9]. This binding-time analysis includes a number of new features, not available in any existing partial evaluator for an imperative language, which are critical when specializing existing programs such as operating system components [24, 25].• Flow sensitivity. A different binding-time description is computed for each program point, allowing the same variable to be considered static at one program point and dynamic at another.• Context sensitivity. Each function call is analyzed with the context of the call site, generating multiple binding-time annotated instances of the same function definition.• Return sensitivity. A different binding-time description is computed for the side-effects and the return value of a function. Luke Hornof, Jacques Noyé |
PEPM | 2 |
| 1997 | Effective Specialization of Realistic Programs via Use Sensitivity
Luke Hornof, Charles Consel, Jacques Noyé |
SAS | 3 |
| 1992 | The KCM System: Speeding-up Logic Programming through Hardware Support
Jacques Noyé |
LPAR | 1 |
| 1989 | KCM: A Knowledge Crunching MachineabstractKCM (Knowledge Crunching Machine) is a high-performance back-end processor which, coupled to a UNIX* desk-top workstation, provides a powerful and user-friendly Prolog environment catering for both development and execution of significant Prolog applications. This paper gives a general overview of the architecture of KCM stressing some new features like a 64-bit tagged architecture, shallow backtracking and an original memory management unit. Some early benchmark results obtained on prototype machines are presented. They show that KCM, which runs at a peak speed of 833 Klips on list concatenation, compares favorably with other dedicated Prolog machines and available commercial systems running on fast general purpose processors. Hans Benker, Jean-Michel Beacco, Sylvie Bescos, Michel Dorochevsky, Thomas Jeffré, Anita Pohlmann, Jacques Noyé, Bruno Poterie, Alan P. Sexton, Jean-Claude Syre, Oliver Thibault, Günter Watzlawik |
ISCA | 7 |