BACK TO INDEX

All publications sorted by title

2011 2010 2009 2008 2007 2006 2005 2004 2003
2002 2001 2000 1999 1998 1997 1996 1995 1994
1993 1992

2011
  1. Ismael Mejìa and Mario Südholt. Structured and flexible gray-box composition using invasive distributed patterns. Int. Journal of Computer Science and Information Systems (IJCSIS), 6(1):13, April 2011.


  2. Ismael Mejìa and Mario Südholt. Towards a robust model for distributed aspects. In Proceedings of the 1st International Workshop on Modularity In Systems Software (MISS'11), March 2011. ACM.


  3. Ismael Mejìa, Mario Südholt, and Luis Daniel Benavides Navarro. A study of invasive composition for the evolution of a health information system. In Proceedings of the 2nd International Workshop on Variability & Composition (VariComp'11), 2011. ACM.


2010
  1. Mario Südholt, Uwe Hohenstein, Jean-Marc Jézéquel, and Benoît Baudry, editors. Proceedings of the 9th Int. Conference on Aspect-Oriented Software Development, 2010.


  2. Awais Rashid, Regine Meunier, Thomas Cottenier, Phil Greenwood, Roberta Coelho, Ruzanna Chitchyan, Mario Südholt, and Wouter Joosen. Aspect-Oriented Software Development in Practice: Tales from AOSD-Europe. IEEE Computer, February 2010.


  3. Éric Tanter, Johan Fabry, Rémi Douence, Jacques Noyé, and Mario Südholt. Scoping Strategies for Distributed Aspects. Science of Computer Programming, 75(12), December 2010.


  4. Bruno De Fraine, Erik Ernst, and Mario Südholt. Essential AOP: The A Calculus. In Proceedings of the 24th European Conference on Object-Oriented Programming (ECOOP 2010), LNCS, June 2010.


  5. Ismael Mejìa and Mario Südholt. Structured and flexible gray-box composition: application to task rescheduling for grid benchmarking. In Proceedings of the IADIS International Conference on Applied Computing 2010, Timisoara, Romania, pages 8, October 2010. IADIS Press.


  6. Jean-Marc Menaud, Adrien Lèbre, Thomas Ledoux, Jacques Noyé, Pierre Cointe, Rémi Douence, and Mario Südholt. Vers une réification de l'énergie dans le domaine du logiciel. In Journées du GDR Génie de la Programmation et du Logiciel, Pau, March 2010.
    Note: Défis du Génie de la Programmation et du Logiciel.


  7. Asad Syed Ali Naqvi, Ruzanna Chitchyan, Steffen Zschaler, Awais Rashid, and Mario Südholt. Cross-Document Dependency Analysis for System-of-System Integration. In Proceeding of the 15th Monterey Workshop - Foundations of Computer Software, Future Trends and Techniques for Development (Monterey'08), 2010. Springer-Verlag.


2009
  1. Mario Südholt, editor. Proceedings of the 8th Int. Workshop on Foundations of Aspect-Oriented Languages, FOAL 2009, Charlottesville, Virginia, USA, March 2, 2009, March 2009. ACM.


  2. Éric Tanter, Johan Fabry, Rémi Douence, Jacques Noyé, and Mario Südholt. Expressive Scoping of Distributed Aspects. In Proc. of the Int. Conf. on Aspect-Oriented Software Development (AOSD'09), March 2009. ACM Press.


2008
  1. Frans Sanen, Ruzanna Chitchyan, Lodewijk Bergmans, Johan Fabry, Mario Südholt, and Katharina Mehner, editors. Report on the Int. WS on Aspects, Dependencies and Interactions (ADI'07), LNCS 4906, February 2008.


  2. Luis Daniel Benavides Navarro, Rémi Douence, Angel Núñez, and Mario Südholt. LTS-based Semantics and Property Analysis of Distributed Aspects and Invasive Patterns. In Proceedings of the 3rd International Workshop on Aspects, Dependencies, and Interactions (ADI'08), July 2008.


  3. Bruno De Fraine, Mario Südholt, and Viviane Jonckers. StrongAspectJ: Flexible and Safe Pointcut/Advice Bindings. In Mira Mezini, editor, Proceedings of the 7th ACM Int. Conf. on Aspect-Oriented Software Development (AOSD'08), March 2008. ACM Press.
    Note: Distinguished paper award.


  4. Luis Daniel Benavides Navarro, Rémi Douence, Fabien Hermenier, Jean-Marc Menaud, and Mario Südholt. Aspect-based patterns for grid programming. In Proc. of the 20th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD'08), November 2008. IEEE.


  5. Luis Daniel Benavides Navarro, Rémi Douence, and Mario Südholt. Debugging and testing middleware with aspect-based control-flow and causal patterns. In In Proc. of the ACM/IFIP/USENIX 9th International Middleware Conference, December 2008. Springer-Verlag.


2007
  1. Olaf Spinczyk, Mario Südholt, and Celina Gibbs, editors. ACP4IS'07: Proceedings of the 6th workshop on Aspects, components, and patterns for infrastructure software, New York, NY, USA, 2007. ACM Press.


  2. Mario Südholt and Charles Consel, editors. ECOOP 2006 Workshop Reader, volume 4379 of LNCS, 2007. Springer Verlag.


  3. Luis Daniel Benavides Navarro, Christa Schwanninger, Robert Sobotzik, and Mario Südholt. ATOLL: Aspect-Oriented Toll System. In Proc. 6th Int. Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS'06) at AOSD, New York, NY, USA, 2007. ACM Digital Library.


  4. Luis Daniel Benavides Navarro, Mario Südholt, Rémi Douence, and Jean-Marc Menaud. Invasive patterns for distributed applications. In Proc. of the 9th International Symposium on Distributed Objects, Middleware, and Applications (DOA'07), LNCS, November 2007. Springer Verlag.


  5. Luis Daniel Benavides Navarro, Mario Südholt, Rémi Douence, and Jean-Marc Menaud. Invasive patterns: aspect-based adaptation of distributed applications. In Proc. of the 4th International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT'07) at ECOOP, July 2007.


  6. Dong Ha Nguyen and Mario Südholt. Property-preserving evolution of components using VPA-based aspects. In Proc. of the 9th International Symposium on Distributed Objects, Middleware, and Applications (DOA'07), LNCS, November 2007. Springer Verlag.


  7. Dong Ha Nguyen and Mario Südholt. Towards correct evolution of components using VPA-based aspects. In Proc. of the 4th Workshop on Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'07) at ECOOP, July 2007.


  8. Bruno De Fraine, Mario Südholt, and Viviane Jonckers. A Formal Semantics of Flexible and Safe Pointcut/Advice Bindings. Technical report SSEL 02/2007/a, Vrije Universiteit Brussel, October 2007.


  9. Mario Südholt. Towards expressive, well-founded and correct Aspect-Oriented Programming. Habilitation (HDR) thesis, University of Nantes, July 2007.


2006
  1. Yvonne Coady, Hans-Arno Jacobsen, and Mario Südholt, editors. Special issue on AOP for systems software and middleware, Transactions on AOSD. Springer Verlag, September 2006.


  2. Welf Löwe and Mario Südholt, editors. Proceedings of the 5th Int. Symposium on Software Composition (SC'06), number 4089 of LNCS, 2006. Springer Verlag.


  3. Johan Brichau, Ruzanna Chitchyan, Siobhán Clarke, Ellie D'Hondt, Alessandro Garcia, Michael Haupt, Wouter Joosen, Shmuel Katz, Jacques Noyé, Awais Rashid, and Mario Südholt. A Model Curriculum for Aspect-Oriented Software Development. IEEE Software, nov/dec 2006.
    Note: Special issue on Software Engineering Curriculum Development.


  4. Rémi Douence, Thomas Fritz, Nicolas Loriant, Jean-Marc Menaud, Marc Ségura-Devillechaise, and Mario Südholt. An expressive aspect language for system applications with Arachne. Transactions on Aspect-Oriented Software Development, 1:174--213, March 2006.
    Note: LNCS vol. 3880.


  5. Marc Ségura-Devillechaise, Jean-Marc Menaud, Nicolas Loriant, Thomas Fritz, Rémi Douence, and Mario Südholt. Dynamic Adaptation of the Squid Web Cache with Arachne. IEEE Software, 23(1):34--41, 2006.
    Note: Special Issue on Aspect-Oriented Computing.


  6. Luis Daniel Benavides Navarro, Mario Südholt, Wim Vanderperren, Bruno De Fraine, and Davy Suvée. Explicitly distributed AOP using AWED. In Proceedings of the 5th Int. ACM Conf. on Aspect-Oriented Software Development (AOSD'06), March 2006. ACM Press.


  7. Rémi Douence, Didier Le Botlan, Jacques Noyé, and Mario Südholt. Concurrent Aspects. In Proc. of the 5th Int. Conf. on Generative Programming and Component Engineering (GPCE'06), October 2006. ACM Press.


  8. Luis Daniel Benavides Navarro, Mario Südholt, and Wim Vanderperren, and Bart Verheecke. Modularization of distributed web services using AWED. In Proceedings of the 8th International Symposium on Distributed Objects and Applications (DOA'06), LNCS, Oct./Nov. 2006. Springer Verlag.


  9. Dong Ha Nguyen and Mario Südholt. VPA-based aspects: better support for AOP over protocols. In 4th IEEE International Conference on Software Engineering and Formal Methods (SEFM'06), September 2006. IEEE Press.


  10. Luis Daniel Benavides Navarro, Mario Südholt, Wim Vanderperren, Bruno De Fraine, and Davy Suvée. Explicitly distributed AOP using AWED. Research Report 5882, INRIA, March 2006.
    Note: Slightly extended version of [Benavides et al., AOSD'06].


  11. Rémi Douence, Didier Le Botlan, Jacques Noyé, and Mario Südholt. Concurrent aspects. Research Report 5873, INRIA, March 2006.


  12. Rémi Douence, Didier Le Botlan, Jacques Noyé, and Mario Südholt. Towards a model of concurrent AOP. Int. WS on Software Engineering Properties of Languages and Aspect Technologies (SPLAT'06), March 2006.


2005
  1. Pierre Cointe and Mario Südholt, editors. Programmation par aspects, volume 3(11) of L'Objet --- logiciel, bases de données, réseaux, November 2005. Hermes Science Publications.
    Note: Versions éténdues d'une éléction d'articles de JFDLPA'04.


  2. Jacques Noyé, Rémi Douence, and Mario Südholt. Composants et aspects. In Mourrad Oussalah, editor, Composants : concepts, techniques et outils, chapter 6. Vuibert, February 2005.


  3. Rémi Douence, Thomas Fritz, Nicolas Loriant, Jean-Marc Menaud, Marc Ségura-Devillechaise, and Mario Südholt. An expressive aspect language for system applications with Arachne. In Proc. of 4th International Conference on Aspect-Oriented Software Development (AOSD'05), March 2005. ACM Press.


  4. Thomas Fritz, Marc Ségura-Devillechaise, Mario Südholt, Egon Wuchner, and Jean-Marc Menaud. Automating adaptive image generation for medical devices using Aspect-Oriented Programming. In Proceedings of the 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA'05), September 2005.


  5. Mario Südholt. A model of components with non-regular protocols. In Proceedings of the 4th International Workshop on Software Composition (SC'05), LNCS, April 2005. Springer Verlag.
    Abstract: Behavioral specifications which are integrated into component interfaces are an important means for the correct construction of component-based systems. Currently, such specifications are typically limited to finite-state protocols because more expressive notions of protocol do not support reasonable basic composition properties, such as compatibility and substitutability. In this paper, we present first results of the integration into component interfaces of a notion of non-regular protocols based on {``}non-regular process types{''} introduced by Puntigam. More concretely, we present three contributions: (i) a motivation of the usefulness of non-regular protocols in the context of peer-to-peer applications, (ii) a language for non-regular protocols and an outline of a suitable formal definition, (iii) a discussion of basic composition properties and an analysis of how to adequately integrate protocol-modifying operators in the model.


  6. Thomas Fritz, Marc Ségura-Devillechaise, Mario Südholt, Egon Wuchner, and Jean-Marc Menaud. An application of dynamic AOP to medical image generation. Proc. of the International Workshop on Dynamic Aspects at AOSD (DAW'05), March 2005.


2004
  1. Rémi Douence, Pascal Fradet, and Mario Südholt. Trace-Based Aspects. In Mehmet Aksit, Siobhán Clarke, Tzilla Elrad, and Robert E. Filman, editors, Aspect-Oriented Software Development. Addison-Wesley, 2004.


  2. Pierre Cointe, Jacques Noyé, Rémi Douence, Thomas Ledoux, Jean-Marc Menaud, Gilles Muller, and Mario Südholt. Programmation post-objets : des langages d'aspects aux langages de composants. RSTI L'Objet, 10(4), 2004.
    Note: Colloque en l'honneur de Jean-François Perrot.


  3. Rémi Douence, Pascal Fradet, and Mario Südholt. Composition, Reuse and Interaction Analysis of Stateful Aspects. In Proc. of the 3rd Int. Conf. on Aspect-Oriented Software Development (AOSD'04), March 2004. ACM, ACM Press.


  4. Gilles Muller, Julia Lawall, Jean-Marc Menaud, and Mario Südholt. Constructing Component-Based Extension Interfaces in Legacy Systems Code. In ACM SIGOPS European Workshop 2004 (EW'2004), Louvain, Belgique, September 2004.


  5. Pierre Cointe and Mario Südholt. Actes de la Première Journée Francophone sur le Développement du Logiciel par Aspects (JFDLPA'04). Technical report 04/7/INFO, École des Mines de Nantes, September 2004.


  6. Andres Farias and Mario Südholt. Integrating protocol aspects with software components to address dependability concerns. Technical report 04/6/INFO, École des Mines de Nantes, November 2004.


2003
  1. Rémi Douence and Mario Südholt. Un modèle et un outil pour la programmation par aspects événementiels. In LMO 2003, Vannes, February 2003. Hermès.
    Note: Version anglaise: [douence-sudholt.tr2002].
    Keywords: AOP, EAOP, aspect composition, tool, Java.


  2. Rickard A. Åberg, Julia Lawall, Mario Südholt, and Gilles Muller. Evolving an OS Kernel using Temporal Logic and Aspect-Oriented Programming. In The Second AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS), March 2003.
    Keywords: AOP, OS, Temporal logic, EAOP, Bossa.


  3. Rickard A. Åberg, Julia Lawall, Mario Südholt, Gilles Muller, and Anne-Françoise Le Meur. On the automatic evolution of an OS kernel using temporal logic and AOP. In Proceedings of the 18th IEEE International Conference on Automated Software Engineering 2003 (ASE 2003), Montreal, Canada, October 2003.
    Abstract: Automating software evolution requires both identifying precisely the affected program points and selecting the appropriate modification at each point. This task is particularly complicated when considering large pieces of software, even when the modifications appear to be systematic. We illustrate this situation in the context of evolving the Linux kernel to support Bossa, an event-based framework for process-scheduler development. To support Bossa, events must be added at points scattered throughout the kernel. In each case, the choice of event depends on properties of one or a sequence of instructions. To describe precisely the choice of event, we propose to guide the event insertion by using a set of rules, amounting to an aspect, that describes the control-flow contexts in which each event should be generated. In this paper, we present our approach and describe the set of rules that allow proper event insertion. These rules use temporal logic to describe sequences of instructions that require events to be inserted. We also give an overview of an implementation that we have developed to automatically perform this evolution.


2002
  1. Luciano Porto Barreto, Rémi Douence, Gilles Muller, and Mario Südholt. Programming OS Schedulers with Domain-Specific Languages and Aspects: New Approaches for OS Kernel Engineering. In International Workshop on Aspects, Components, and Patterns for Infrastructure Software at AOSD, April 2002.
    Abstract: There is a continuous demand for new scheduling policies to address specific requirements of modern OSes. However, the implementation of such policies within an existing OS kernel raises many problems, mainly because optimizations within schedulers hinder code maintenance and implementation of existing schedulers is spread over the kernel. In this paper we motivate that schedulers form an aspect within OS kernels. We show how the DSL of the Bossa system for the definition of scheduling policies and its runtime support can be integrated with a framework for Aspect-Oriented Programming, Event-based AOP. Finally, we discuss the generalization of AOP-based techniques to other OS kernel modules.


  2. Rémi Douence, Pascal Fradet, and Mario Südholt. A framework for the detection and resolution of aspect interactions. In D. Batory, C. Consel, and W. Taha, editors, Generative Programming and Component Engineering: ACM SIGPLAN/SIGSOFT Conference, GPCE 2002 - Proceedings, volume 2487 of Lecture Notes in Computer Science, Pittsburgh, PA, USA, pages 173--188, October 2002. Springer-Verlag.
    Keywords: aop, static analysis.
    Abstract: Aspect-Oriented Programming (AOP) promises separation of concerns at the implementation level. However, aspects are not always orthogonal and aspect interaction is an important problem. Currently there is almost no support for the detection and resolution of such interactions. The programmer is responsible for identifying interactions between conflicting aspects and implementing conflict resolution code. In this paper, we propose a solution to this problem based on a generic framework for AOP. The contributions are threefold: we present a formal and expressive crosscut language, two static conflict analyses and some linguistic support for conflict resolution.


  3. Andres Farias, Yann-Gaël Guéhéneuc, and Mario Südholt. Integrating Behavioral Protocols in Enterprise Java Beans. In Kenneth Baclawski and Haim Kilov, editors, Eleventh OOPSLA Workshop on Behavioral Semantics: Serving the Customer, pages 80--89, October 2002.
    Keywords: protocols, component models, detection, verification, EJB, JavaBeans.


  4. Andres Farias and Mario Südholt. On components with explicit protocols satisfying a notion of correctness by construction. In R. Meersam and Zahir Tari et al, editors, On the Move to Meaningful Internet Systems 2002: CoopIS, DOA, ODBASE 2002, volume 2519 of Lecture Notes in Computer Science, pages 995--1012, October 2002. Springer-Verlag.
    Keywords: protocols, component models, composition, EJB, JavaBeans.


  5. Rémi Douence, Pascal Fradet, and Mario Südholt. Detection and resolution of aspect interactions. Technical report RR-4435, INRIA, April 2002.
    Keywords: aop, static analysis.
    Abstract: Aspect-Oriented Programming (AOP) promises separation of concerns at the implementation level. However, aspects are not always orthogonal and aspect interaction is an important problem. Currently there is almost no support for the detection and resolution of such interactions. The programmer is responsible for identifying interactions between conflicting aspects and implementing conflict resolution code. In this paper, we propose a solution to this problem based on a generic framework for AOP. The contributions are threefold: we present a formal and expressive crosscut language, two static conflict analyses and some linguistic support for conflict resolution.


  6. Rémi Douence and Mario Südholt. A model and a tool for Event-based Aspect-Oriented Programming (EAOP). Technical report 02/11/INFO, École des Mines de Nantes, 2002.
    Note: 2nd edition, french version to be published at LMO'03.
    Keywords: AOP, aspect composition, tool, Java.


  7. Andres Farias and Mario Südholt. On the construction of components with explicit protocols. Technical report 02/4/INFO, École des Mines de Nantes, 2002.
    Abstract: Component-based programming promises to facilitate the construction of large-scale applications, which is supported by the important concept of interfaces. In most current component models, interfaces essentially declare types and sets of services that a component implements. They are not expressive enough to formulate many properties important for component collaboration. In this paper we consider an important class of such properties, sequencing constraints, which components must obey when calling one another services. We consider the integration into interfaces of sequencing properties by means of protocols formalized in terms of finite-state machines. The paper presents three contributions. First, a set of protocol composition operators and a discussion of correctness properties of such operators useful for component assembly. Second, we provide a first step toward the integration of additional state information into protocols. Finally, we show how JavaBeans can benefit from the techniques we present.


2001
  1. Rémi Douence and Mario Südholt. A generic reification technique for object-oriented reflective languages. Higher-Order and Symbolic Computation, 14(1):7--34, March 2001.
    Keywords: reflection, object-oriented programming, program transformation.
    Abstract: Computational reflection is gaining interest in practical applications as witnessed by the use of reflection in the Java programming environment and recent work on reflective middleware. Reflective systems offer many different reflection programming interfaces, the so-called Meta-Object Protocols (MOPs). Their design is subject to a number of constraints relating to, among others, expressive power, efficiency and security properties. Since these constraints are different from one application to another, we should be able to easily provide specially-tailored MOPs. In this paper, we present a generic reification technique based on program transformation. It enables the selective reification of arbitrary parts of object-oriented metacircular interpreters. The program transformation can be applied to different interpreter definitions. Each resulting reflective implementation provides a different MOP directly derived from the original interpreter definition.


  2. Rémi Douence, Olivier Motelet, and Mario Südholt. A formal definition of crosscuts. In A. Yonezawa and S. Matsuoka, editors, Proceedings of the 3rd International Conference on Reflection 2001, volume 2192 of Lecture Notes in Computer Science, Kyoto, Japan, pages 170--186, September 2001. Springer-Verlag.
    Abstract: Crosscutting, i.e. relating different program points is one of the key notions of Aspect-Oriented Programming. In this report, we consider a general and operational model for crosscutting based on execution monitors. A domain-specific language for the definition of crosscuts constitutes the core of the report. The semantics of this language is formally defined by means of parser operators matching event patterns in execution traces. We define an operational semantics of the matching process by means of rules relating the operators. The use of the language is exemplified by several sophisticated crosscut definitions. We sketch a prototype implementation in Java which has been systematically derived from the language definition.


  3. Noury M. Bouraqadi-Saâdani, Rémi Douence, Thomas Ledoux, Olivier Motelet, and Mario Südholt. Status of work on AOP at the OCM group. Technical report 01-4-INFO, École des Mines de Nantes, April 2001.
    Keywords: AOP, execution monitoring, program transformation, interpreter.
    Abstract: The OCM (Object, Components, Model) group of the computer science department at Ecole des Mines de Nantes is interested in Aspect-Oriented Programming (AOP). This report is a collection of three short articles presenting work in progress at our lab. We focus on two approaches: AOP from a monitoring perspective (articles 1 and 2) and different approaches to achieve AOP weaving (article 3).


  4. Noury M. Bouraqadi-Saâdani, Thomas Ledoux, and Mario Südholt. A Reflective Infrastructure for Coarse-Grained Strong Mobility and its Tool-Based Implementation. Technical report 01-7-INFO, École des Mines de Nantes, September 2001.
    Note: Invited presentation at the phInternational Workshop on Experiences with reflective systems (held in conjunction with Reflection 2001, the ph``3rd International Conference on Metalevel Architectures and Separation of Crosscutting Concerns'').


  5. Noury M. Bouraqadi-Saâdani, Thomas Ledoux, and Mario Südholt. Description du prototype RAM. Rapport technique, École des Mines de Nantes, September 2001.


  6. Noury M. Bouraqadi-Saâdani, Thomas Ledoux, and Mario Südholt. Un survol de l'architecture du prototype RAM. Rapport technique, École des Mines de Nantes, May 2001.


  7. Rémi Douence, Olivier Motelet, and Mario Südholt. A formal definition of crosscuts. Technical report 01-3-INFO, École des Mines de Nantes, 2001.
    Abstract: Crosscutting, i.e. relating different program points is one of the key notions of Aspect-Oriented Programming. In this report, we consider a general and operational model for crosscutting based on execution monitors. A domain-specific language for the definition of crosscuts constitutes the core of the report. The semantics of this language is formally defined by means of parser operators matching event patterns in execution traces. We define an operational semantics of the matching process by means of rules relating the operators and illustrate how to use these rules to formally prove optimization properties. The use of the language is exemplified by several sophisticated crosscut definitions. We present a prototype implementation in Java which has been systematically derived from the language definition.


  8. Pierre Cointe, Rémi Douence, Thomas Ledoux, Jean-Marc Menaud, Jacques Noyé, and Mario Südholt. KLEE - Langages à objets, programmation par aspects et modèles de composants : vers des architectures logicielles adaptables. Première version de la proposition de projet hors site IRISA, December 2001.
    Note: Document de travail.


  9. Rémi Douence, Olivier Motelet, and Mario Südholt. Sophisticated crosscuts for e-commerce. ECOOP 2001 Workshop on Advanced Separation of Concerns, June 2001.


2000
  1. Rémi Douence and Mario Südholt. On the Lightweight and Selective Introduction of Reflective Capabilities in Applications. In ECOOP'00 Workshop on Reflection and Meta-Level Architectures, 2000.
    Keywords: reflection, program transformation, Java.


  2. Rémi Douence and Mario Südholt. Une technique générique de réification dans les langages à objets. In Proceeding of 6th International Maghrebian Conference on Computer Science, Fes, Morocco, pages 311--320, November 2000.
    Keywords: reflection, program transformation, MOP, Java.


  3. Noury M. Bouraqadi-Saâdani, Rémi Douence, Thomas Ledoux, and Mario Südholt. Un modèle de mobilité forte en Java. Technical report, École des Mines de Nantes, 2000.
    Note: Deuxième livrable de la CTI FT R&D sur l'application de la programmation par aspects au code mobile Java.


1999
  1. Pascal Fradet and Mario Südholt. An aspect language for robust programming. In International Workshop on Aspect-Oriented Programming at ECOOP, 1999.
    Keywords: aop, abstract interpretation.


  2. Rémi Douence and Mario Südholt. The next 700 reflective object-oriented languages. Technical report 99-1-INFO, École des Mines de Nantes, 1999.
    Keywords: MetaJ, oop, Smithonian reflective programming, program transformation, meta-object protocol.
    Abstract: Since Smith seminal work, there have been numerous reflective language definition and implementation proposals. These proposals, initially restricted to functional languages, have been quickly extended to object-oriented languages. Unfortunately, reflective object-oriented language definitions remained mostly ad hoc. In this paper, we present a generic reification technique which enables the selective reification of arbitrary parts of object-oriented language interpreters. Our program transformation can be applied to different interpreter definitions. Each resulting reflective implementation provides a different meta-object protocol based on the original interpreter definition. This technique paves the way to a systematic study of reflective object-oriented language implementations.


1998
  1. Pascal Fradet and Mario Südholt. AOP: towards a generic framework using program transformation and analysis. In International Workshop on Aspect-Oriented Programming at ECOOP, July 1998.
    Keywords: aop, abstract interpretation, aspect of program robustness.
    Abstract: What exactly are aspects? How to weave? What are the join points used to anchor aspects into the component program? Is there a general purpose aspect language? We address these questions for a particular but quite general class of aspects: aspects which can be described as static, source-to-source program transformations. We discuss the design of a generic framework to express aspects as syntactic transformations as well as a generic weaver. We also consider how to use semantic properties for the definition of aspects and how to implement these properties using static analysis techniques. As an application of the framework, we sketch how to describe and implement an aspect dealing with program robustness and exceptions.


1997
  1. Mario Südholt. The Transformational Derivation of Parallel Programs using Data-Distribution Algebras and Skeletons. PhD thesis, Technische Universität Berlin, August 1997.


  2. A. A. Holzbacher, M. Périn, and Mario Südholt. Modeling railway control systems using graph grammars: a case study. In 2nd International Conference on COORDINATION, volume 1282 of Lecture Notes in Computer Science, September 1997. Springer-Verlag.
    Note: Long version published as INRIA TR 3210: click ftp://ftp.inria.fr/INRIA/publication/publi-ps-gz/RR/RR-3210.pdf.gz.
    Keywords: software architecture, graph grammar, software evolution.
    Abstract: In this paper we develop in three phases a railway control system. We are mainly concerned with the \emph{software architecture} of the control system and its \emph{dynamic evolution}; we do not discuss here the implementation details of the components forming the control system. First, we informally discuss our design proposal for the architecture of the control system: a hierarchy of controllers whose leaves are local controllers connected in a network that mimics the underlying railway topology. Second, we formally define by means of particular \emph{graph grammars} a style of software architectures for the railway control system consisting of two complementary \emph{views} and ensuring several desirable properties by construction. The dynamic evolution of the architecture is modelled by a set of \emph{coordination rules} which define graph transformations and are \emph{verified} w.r.t. to the graph grammar. Third, using a coordination rule as a formal specification of a dynamic modification of the railway control system, we derive its implementation in ConCoord, a programming environment for concurrent coordinated programming. With regard to software engineering, the two first phases belong to the system design while the third one forms the first implementation step.


  3. P. Pepper and M. Südholt. Deriving Parallel Numerical Algorithms using Data Distribution Algebras: Wang's Algorithm. In Proceedings of the 30rd Hawaii International Conference on System Sciences, 7th--10th January 1997, January 1997. IEEE.
    Keywords: functional programming, parallel programming, skeleton, data distribution algebra, partition algorithm.
    Abstract: Parallel and distributed programming are much more difficult than the development of sequential algorithms due to data distribution issues and communication requirements. This paper presents a methodology that enables the abstract description of the distribution of data structures by means of overlapping covers that form data distribution algebras. Algorithms are formulated and derived by transformation in a functional environment using skeletons, i.e. higher-order functions with specific parallel implementations. Communication is specified implicitly through the access to overlapping parts of covers. Such specifications enable the derivation of explicit lower-level communication statements. We illustrate the concepts by a complete derivation of Wang's partition algorithm for the solution of tridiagonal systems of linear equations.


  4. M. Süudholt, C. Piepenbrock, K. Obermayer, and P. Pepper. Solving Large Systems of Differential Equations using Covers and Skeletons. In 50th Working Conference on Algorithmic Languages and Calculi, February 1997. Chapman & Hall.
    Abstract: The design and implementation of parallel algorithms for distributed memory architectures is much harder than the development of sequential algorithms. This is mainly due to the communication and synchronization that is necessary to manage distributed data correctly. This paper applies a methodology for the transformational derivation of parallel programs using \emph{data distribution algebras} that enable an abstract description of data distribution issues. Algorithms are formulated using \emph{skeletons}, that is, specialized higher-order functions with particular parallel implementations. The methodology is applied to a the solution of a \emph{system of ordinary differential equations} where convolutions can be computed using the Fast Fourier transformation. The example illustrates the practical optimization problems for a development model of the visual system that involves large scale neural network simulations. Finally, this algorithm is compared to an implementation of the same system of equations in the programming language C* on a CM-5.


1996
  1. Thomas Frauenstein, Wolfgang Grieskamp, Peter Pepper, and Mario Südholt. Communicating Functional Agents and their Application to Graphical User Interfaces. In Proceedings of the 2nd International Conference on Perspectives of System Informatics, Novosibirsk, volume 1181 of LNCS, June 1996. Springer Verlag.
    Keywords: functional programming, graphical user interface, Opal, gate.
    Annotation: PSI '96


  2. Thomas Frauenstein, Wolfgang Grieskamp, and Mario Südholt. On the Semantics of a Concurrency Monad with Choice and Services. Technical report TR96-14, TU Berlin, July 1996.
    Note: Revised Version.
    Keywords: functional programming, concurrency, monadic choice, monad, duration calculus, transistion semantics, denotational semantics.


1995
  1. Peter Pepper and Mario Südholt. Formulation and development of parallel numerical algorithms with data distribution algebras. In Software Engineering im Scientific Computing, June 1995.


  2. Thomas Frauenstein, Wolfgang Grieskamp, Peter Pepper, and Mario Südholt. Communicating Functional Agents and their Application to Graphical User Interfaces. Technical report TR95-19, TU Berlin, 1995.
    Note: Revised Version, April 1996.
    Keywords: functional programming, graphical user interface, Opal, gate.
    Annotation: PSI '96


1994
  1. Mario Südholt. Data Distribution Algebras --- A Formal Basis for Programming Using Skeletons. In E.-R. Olderog, editor, Programming Concepts, Methods and Calculi, pages 19--38. North-Holland, June 1994.
    Keywords: parallel programming, functional programming, skeleton.
    Abstract: Today there is no programming model or language support which offers a uniform programming methodology on a wide variety of parallel architectures. In this paper functional languages are proposed as such a methodology using an extension of the concept of {\em skeletons} --- higher-order functions coupled with parallel implementation templates. An essential part of the proposed methodology is the use of {\em data distribution algebras} as a structured language concept to specify distribution issues explicitly in a skeleton-based approach. It is shown how the {\em skeleton composition problem} can be solved using data distribution algebras. Finally the methodology is applied to the solution of partial differential equations in the context of fluid dynamics.


  2. Wolfgang Grieskamp and Mario Südholt. Handcoder's Guide to OCS Version 2. The Opal Language Group, February 1994.
    Keywords: functional programming, Opal, handcoding.
    Abstract: OPAL is a scheme language, by which we understand that it doesn't provide a priori more than the essential builtin data types of boolean numbers and textual denotations. Consequently, the OPAL compiler must support a way to add handcoded structures to the compilation system without loosing efficiency compared to as data types defined by these structures are built into the language. There is a second --- even more important --- reason which is independent of OPAL being a scheme language. In most cases software is not constructed from scratch, but is embedded in and does embed existing software: the operating system, the user interface, the data base manager and so on. This calls for a well defined interlanguage working interface. Nowadays C is the de facto standard for system programming; hence, it is desirable that OPAL programs can corporate with C software and vice versa. This manual describes on a technical level how to add handcoded structures to the OPAL Compilation System Version 2, and how to embed OPAL structures into C programs.


1993
  1. Peter Pepper, Jürgen Exner, and Mario Südholt. Funktionale Programmierung für massiv parallele Systeme. In H. Reichel, editor, Informatik --- Wirtschaft --- Gesellschaft, Informatik aktuell, pages 551--556. Springer Verlag, Berlin, Heidelberg, New York, 1993.


  2. Mario Südholt and Christoph Steigner. xPPUC++ --- A Development Platform for Distributed Applications. In Djamshid Tavangarian and Helmut Bähring, editors, APS '93 --- Arbeitsplatzrechensysteme, pages 161--170. vde-verlag, May 1993.
    Keywords: distributed programming, program development, object oriented programming.


  3. P. Pepper, Jürgen Exner, and Mario Südholt. Functional Development of Massively Parallel Programs. In D. Bjorner, M. Broy, and I.V. Pottosin, editors, Formal Methods in Programming and Their Applications. Proceedings International Conference Novosibirsk, June/July 1993. Lecture Notes on Computer Science 735, pages 217--238, 1993. Springer Verlag, Berlin.
    Keywords: functional programming, massively parallel computation, data parallel computation, skeleton.


  4. Peter Pepper, Mario Südholt, and Jürgen Exner. Functional Programming of Massively Parallel Systems. Technical report 93-16, Technische Universität Berlin, October 1993.
    Keywords: functional programming, massively parallel computation, data parallel computation, skeleton.
    Abstract: Parallel programming is intrinsically more difficult than sequential programming. To this day there is no universal programming methodology which provides a simple programming model applicable to a wide range of architectures. In this report a methodology is presented which aims at solving this dilemma using a transformational approach based on skeletons. First steps towards a general theory of skeletons are set up using results from sheaf theory. These results provide the basis for the formal definition of {\em data distribution algebras} underlying our definition of skeletons. The papers presents several examples in some detail which illustrate the use of the presented formalism in application domains important to parallel programming. Keywords: functional programming, parallel programming, skeleton, data distribution algebra.


1992
  1. Mario Südholt and Christoph Steigner. On Interprocedural Data Flow Analysis for Object-Oriented Languages. In U. Kastens and P. Pfahler, editors, Compiler Construction, 4th International Conference, CC '92, pages 156--162, October 1992. Springer Verlag, Berlin, Heidelberg, New York.
    Keywords: data flow analysis, object oriented programming, late binding, c++.


  2. Mario Südholt. Parallelizing Compilers for Object-Oriented Languages. Master's thesis, Universität Koblenz-Landau, June 1992.



BACK TO INDEX




Disclaimer:

This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All person copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Les documents contenus dans ces répertoires sont rendus disponibles par les auteurs qui y ont contribué en vue d'assurer la diffusion à temps de travaux savants et techniques sur une base non-commerciale. Les droits de copie et autres droits sont gardés par les auteurs et par les détenteurs du copyright, en dépit du fait qu'ils présentent ici leurs travaux sous forme électronique. Les personnes copiant ces informations doivent adhérer aux termes et contraintes couverts par le copyright de chaque auteur. Ces travaux ne peuvent pas être rendus disponibles ailleurs sans la permission explicite du détenteur du copyright.




Last modified: Fri Apr 22 22:26:08 2011
Author: sudholt.


This document was translated from BibTEX by bibtex2html