Filters








885 Hits in 5.3 sec

A Program Transformation Technique to Support AOP within C++ Template

Suman Roychoudhury, Jeff Gray, Jing Zhang, Purushotham Bangalore, Anthony Skjellum
2010 Journal of Object Technology  
A PROGRAM TRANSFORMATION TECHNIQUE TO SUPPORT AOP WITHIN C++ TEMPLATES 144 J OURNAL OF OBJECT TECHNOLOGY V OL. 9, NO. 1 Join Points are specific points of execution in a program, such as a method call,  ...  It also underlines the need for new language constructs to extend AOP support to C++ templates and provides an initial solution to realize this goal.  ...  log.add(x); 7. } 8. } Pointcut specification for weaving into vectors of type int and referenced by variable ai in method foo of class A A PROGRAM TRANSFORMATION TECHNIQUE TO SUPPORT AOP WITHIN  ... 
doi:10.5381/jot.2010.9.1.a3 fatcat:x22bjprdcneblbtop6v3ih4nxa

Generic Advice: On the Combination of AOP with Generative Programming in AspectC++ [chapter]

Daniel Lohmann, Georg Blaschke, Olaf Spinczyk
2004 Lecture Notes in Computer Science  
Most modern programming languages like Ada, Eiffel, and C++ already have built-in support for templates. For Java and C# similar extensions will be available in the near future.  ...  Besides object-orientation, generic types or templates and aspectoriented programming (AOP) gain increasing popularity as they provide additional dimensions of decomposition.  ...  OpenC++ [7] is a MOP for C++ that allows a compiled C++ metaprogram to transform the base-level C++ code.  ... 
doi:10.1007/978-3-540-30175-2_4 fatcat:vtxagw5crncuje4kiwy3rhjubi

The design and implementation of AspectC++

Olaf Spinczyk, Daniel Lohmann
2007 Knowledge-Based Systems  
Aspect-Oriented Programming (AOP) is a programming paradigm that supports the modular implementation of crosscutting concerns.  ...  For a broad adoption of AOP by the software industry, it is crucial to provide solid language and tool support.  ...  AOP in Pure C++ A number of attempts have been suggested to "simulate" AOP concepts in pure C++ using advanced template techniques [7] , macro programming [9] or Policy-based Design [1] .  ... 
doi:10.1016/j.knosys.2007.05.004 fatcat:uslwmre3azgljjlewnmb73wzwy

Code generation for WSLAs using AXpect

G.S. Swint, C. Pu
2004 Proceedings. IEEE International Conference on Web Services, 2004.  
Therefore, integrating support code into a web service application is potentially costly and error prone.  ...  Viewed from this AOP perspective, then, we present a method for integrating WSLAs into code generation using the AXpect weaver, the AOP technology for Infopipes.  ...  ACKNOWLEDGMENTS This work is partially funded by DARPA/IXO as a project in the PCES program, by DoE as a project in the SciDAC's Scientific Data Management Center, by NSF/CISE as a project in the CCR division's  ... 
doi:10.1109/icws.2004.1314732 dblp:conf/icws/SwintP04 fatcat:2zvwfpitavf4hdm5valmtfm5dm

Feature-Driven and Incremental Variability Generalization in Software Product Line [chapter]

Liwei Shen, Xin Peng, Wenyun Zhao
2009 Lecture Notes in Computer Science  
It addresses a set of basic scenarios where program-level JBoss-AOP based reference implementations respond to the feature-level variability generalization patterns.  ...  In the lifecycle of a software product line (SPL), incremental generalization is usually required to extend the variability of existing core assets to support the new or changed application requirements  ...  On the program level, we employ JBoss-AOP as the reference implementation technique for the variations, since aspect-oriented programming (AOP) [7] has been proven an efficient way for the variability  ... 
doi:10.1007/978-3-642-04211-9_17 fatcat:n7isfuuikbh57k5h74m4dh3gte

Supporting data aspects in pig latin

Curtis E. Dyreson, Omar U. Florez, Akshay Thakre, Vishal Sharma
2013 Proceedings of the 12th annual international conference on Aspect-oriented software development - AOSD '13  
The data weaver is a layer that maps a Pig Latin program to an augmented Pig Latin program using Pig Latin templates or patterns.  ...  AOP techniques can be used to weave metadata around Pig data. The metadata imbues the data with additional semantics that must be observed in the evaluation of Pig Latin programs.  ...  ACKNOWLEDGMENTS This material is based upon work supported by the National Science Foundation under Grant No. 1144404 entitled "III: EAGER: Aspect-oriented Data Weaving."  ... 
doi:10.1145/2451436.2451439 dblp:conf/aosd/DyresonFTS13 fatcat:dgzeyii7hvce7at5wnlfo4ysrq

Generative Programming and Active Libraries [chapter]

Krzysztof Czarnecki, Ulrich Eisenecker, Robert Glück, David Vandevoorde, Todd Veldhuizen
2000 Lecture Notes in Computer Science  
We describe generative programming, an approach to generating customized programming components or systems, and active libraries, which are based on this approach.  ...  Several working examples (Blitz++, GMCL, Xroma) are presented to illustrate the potential of active libraries. We discuss relevant implementation technologies.  ...  This technique has proven a powerful way to write code generators for C++.  ... 
doi:10.1007/3-540-39953-4_3 fatcat:t4b6l4wlrfdxbpnoupe7u2evqm

An Extensible Open-Source Compiler Infrastructure for Testing [chapter]

Dan Quinlan, Shmuel Ur, Richard Vuduc
2006 Lecture Notes in Computer Science  
We emphasize the particular aspects of ROSE, such as support for the general analysis of whole programs, that are particularly well-suited to the testing research community and the scale of the problems  ...  Testing forms a critical part of the development process for large-scale software, and there is growing need for automated tools that can read, represent, analyze, and transform the application's source  ...  In this way, program transformation techniques can have a greater role in getting model checking to work with larger programs.  ... 
doi:10.1007/11678779_9 fatcat:z3rj2wecm5g2jktnkr3cmcrvnq

Using aspect orientation in legacy environments for reverse engineering using dynamic analysis—An industrial experience report

Bram Adams, Kris De Schutter, Andy Zaidman, Serge Demeyer, Herman Tromp, Wolfgang De Meuter
2009 Journal of Systems and Software  
Acknowledgements We would like to thank Kava for their cooperation and very generous support.  ...  As C does not have a kind of "super-type" similar to Java's Object 6 and it does not support C++-like templates, there is no type-safe way to refer to a generic type.  ...  Failure or success of AOP for re-engineering depends to a large extent on sufficient aspect language support.  ... 
doi:10.1016/j.jss.2008.09.031 fatcat:wcomscsp6ja4fgoxiet2wdsppu

On interplay between separation of concerns and genericity principles: Beyond code weaving

Stan Jarzabek, Kuldeep Kumar
2016 Computer Science and Information Systems  
Among programming language features, type parameterization [7] (called generics in Ada, Eiffel, Java and C#, and templates in C++), higher-order functions [8] , and inheritance can help avoid repetitions  ...  Some of the cross-cutting concerns can be separated using compositional techniques such as Aspect-Oriented Programming (AOP) that weave code into modules at specified program points.  ...  In that sense, an ART-template solution forms a generic program representation that enables reuse within a single program or across programs.  ... 
doi:10.2298/csis160129028j fatcat:q63nfuizj5ahlhs6grn7h5sfum

Feature-Modeling and Aspect-Oriented Programming: Integration and Automation

Kwanwoo Lee, Goetz Botterweck, Steffen Thiel
2009 2009 10th ACIS International Conference on Software Engineering, Artificial Intelligences, Networking and Parallel/Distributed Computing  
Although current AOP tools (e.g., AJDT) provide a mechanism for switching aspect modules on and off to configure a product, this becomes infeasible in the context of large-scale product lines with thousands  ...  In this paper, we describe how feature modeling can be integrated with aspect-oriented programming to perform automated product derivation efficiently and effectively in the context of large-scale product  ...  Acknowledgment This work was supported, in part, by the Korea Re-  ... 
doi:10.1109/snpd.2009.77 dblp:conf/snpd/LeeBT09 fatcat:yl4qdv56evgabcz4iqd5v7wq2i

Middleware specialization using aspect oriented programming

Dimple Kaul, Aniruddha Gokhale
2006 Proceedings of the 44th annual southeast regional conference on - ACM-SE 44  
To meet this objective this paper describes how we have applied Aspect-Oriented Programming (AOP) in a novel manner to address these challenges.  ...  These middleware are highly flexible and support a large number of features since they have to be applicable to a wide range of domains and applications.  ...  AspectC++ is a tool using AOP for the C++ language. For every valid C++ program, AspectC++ can be used.  ... 
doi:10.1145/1185448.1185520 dblp:conf/ACMse/KaulG06 fatcat:abimbcxddzgx5g4obbhkyyino4

A language-independent approach to software maintenance using grammar adapters

Suman Roychoudhury
2004 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '04  
Several tools and language extensions have been developed by others to enable these techniques in a few popular programming languages. However, software exists in a variety of languages.  ...  A core focus of this objective is the abstraction of transformation functions to enable design maintenance in legacy based systems.  ...  To extract the commonalties among transformation rules for different languages, a generic transformation map is specified for each language domain, which acts as a reusable rule template library within  ... 
doi:10.1145/1028664.1028780 dblp:conf/oopsla/Roychoudhury04a fatcat:q4qmvqgb6bavpbiggtn5j6jq5u

Aspects for Stages: Cross Cutting Concerns for Metaprograms

Yannis Lilis, Anthony Savidis
2014 Journal of Object Technology  
We discuss their implementation in a language supporting compile-time metaprogramming, where aspects are realized as batches of AST transformation metaprograms, accompanied by an AOP-specific library.  ...  In multi-stage languages the program code is finalized though a sequence of transformations defined in the program itself, a process known as staging, with stages also referred as metaprograms.  ...  For example, AOP++ [YZC05] is a generic AOP framework in C++ that utilized the metaprogramming constructs of the language, i.e. templates, to express pointcut expressions and match joinpoints at compile-time  ... 
doi:10.5381/jot.2014.13.1.a1 fatcat:nxprwjcc55aijca4dww2csmupq

A language-independent approach to software maintenance using grammar adapters

Suman Roychoudhury
2004 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '04  
Several tools and language extensions have been developed by others to enable these techniques in a few popular programming languages. However, software exists in a variety of languages.  ...  A core focus of this objective is the abstraction of transformation functions to enable design maintenance in legacy based systems.  ...  To extract the commonalties among transformation rules for different languages, a generic transformation map is specified for each language domain, which acts as a reusable rule template library within  ... 
doi:10.1145/1028664.1028693 dblp:conf/oopsla/Roychoudhury04 fatcat:eddjonmaz5dp7nde5ub3u62jpm
« Previous Showing results 1 — 15 out of 885 results