#d2d 2.0 text using mtdocpage : webpage #title Bibliography #htmlTitle bandm metatools Bibliography #lang en #commentchar \ #p #verbatimXml #/verbatimXml \\ ================================================================================ #h1#title Own Publications #biblist #sortMethod key #abstractLangs !en! #abstractHiding #lang en #bibentry rewriting2018 #kind article #authors#author Markus Lepper #author Baltasar Trancón y Widemann #title Rewriting for Parametrization #lang en #isbn 978-82-7368-447-9 #issn 0806-3036 #url http://urn.nb.no/URN:NBN:no-65294 #booktitle Tagungsband des 35ten Jahrestreffens der GI-Fachgruppe “Programmiersprachen und Rechenkonzepte” #series IFI Reports #publisher University of Oslo #volume 482 #year 2018 #place Oslo #pages 51-67 #abstract en With a modular architectures of source text objects, a method of free rewriting can be more adequate than pre-wired parameters: each module import can be accompanied with a set of rewriting rules, mapping references to expressions and thus adapting the imported definitions to the needs of the importer. Such a mechanism is described in this paper; it has been implemented in the d2d system applied to document types, but seems applicable also for other architectures with a “glass box” view to modules. There are two fundamentally different use cases: rewriting (a) to alge- braic semantics, e.g. for controlling a parsing process, and (b) reifying the rewritten results, for documentation, statistics, automated user di- alogue, etc. The second case needs much more effort than the first. For both cases an algorithm is presented, which is designed for optimized per- formance, and which reflects details rising from experiences in practical applications. The transfer to other languages is supported by a division of the second algorithm into a generic and a specific part. #/abstract \\ source MDP/ddd2013/parametrization5.pdf #bibentry d2dTut #kind article #authors #author Markus Lepper #author Baltasar Trancón y Widemann #title D2d - Kreatives Schreiben von XML-codierten Texten #isbn 978-3-88579-653-4 #booktitle Informatik 2016 (GI Jahrestagung) #year 2016 #editors #author C. Mayr #author Martin Pinzge #publisher GI #pages 1935-1940 #place Bonn \\source /ddd2016/d2d_tutorial_text.tex #bibentry paisleyControl #kind article #authors #author Baltasar Trancón y Widemann #author Markus Lepper #title A Practical Study of Control in Objected-Oriented--Functional--Logic Programming with Paisley #lang en #url http://eptcs.web.cse.unsw.edu.au/content.cgi?WFLP2016 #booktitle Proc. Functional--Logic Programming (WFLP 2016) #year 2016 #publisher EPTCS #volume 234 #place world \\source /wflp2016/wflp2016.tex #abstract en Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional--logic processing of arbitrary data objects to the Java platform, without constraining the underlying object-oriented semantics. Here we present an extension to the Paisley framework that adds pattern-based control flow. It exploits recent additions to the Java language, namely functional interfaces and lambda expressions, for an explicit and transparent continuation-passing style approach to control. We evaluate the practical impact of the novel features on a real-world case study that reengineers a third-party open-source project to use Paisley in place of conventional object-oriented data query idioms. We find the approach viable for incremental refactoring of legacy code, with significant qualitative improvements regarding separation of concerns, clarity and intentionality, thus making for easier code understanding, testing and debugging. #/abstract #bibentry lljava2016 #kind article #authors #author Baltasar Trancón y Widemann #author Markus Lepper #title LLJava: Minimalist Structured Programming on the Java Virtual Machine \\20160524 neu ml #url http://bandm.eu/metatools/docs/papers/lljava-final.pdf #isbn 978-1-4503-4135-6 #doi 10.1145/2972206.2972218 #booktitle Proc. Principles and Practices of Programming on the Java Platform (PPPJ 2016) #year 2016 #place New York #publisher ACM \\source /microcode/lljava-final.tex #abstract en There is a wide gap in abstraction level between Java source code and JVM bytecode. Many important software-related tasks, such as specification and implementation of code synthesis procedures, code inspection, software understanding and teaching, can benefit from an adequate, intermediate level of abstraction. Available bytecode assembly/disassembly tools are ad-hoc and fall short of the requirements regarding compositionality and clarity. We report on the design and implementation of the LLJava language that bridges the gap, based on careful analysis of bytecode information and rigorous design. #/abstract #bibentry rta2015 #kind article #authors #author Markus Lepper #author Baltasar Trancón y Widemann #title A Simple and Efficient Step Towards Type-Correct XSLT Transformations #lang en #doi 10.4230/LIPIcs.RTA.2015.350 #isbn 978-3-939897-85-9 #booktitle Proceedings 26th International Conference on Rewriting Techniques and Applications (RTA 2015) #year 2015 #publisher Dagstuhl Publishing #series LIPICS #volume 36 #pages 350--364 #place Saarbrücken/Wadern \\% FILE: /doc/papers/xslt/p00-lepper.pdf (xslt2.pdf) #abstract en XSLT 1.0 is a standardized functional programming language and widely used for defining transformations on XML models and documents, in many areas of industry and publishing. The problem of XSLT type checking is to verify that a given transformation, when applied to an input which conforms to a given structure definition, e.g. an XML DTD, will always produce an output which adheres to a second structure definition. This problem is known to be undecidable for the full range of XSLT and document structure definition languages. Either one or both of them must be significantly restricted, or only approximations can be calculated. The algorithm presented here takes a different approach towards type correct XSLT transformations. It does not consider the type of the input document at all. Instead it parses the fragments of the result document contained verbatim in the transformation code and verifies that these can potentially appear in the result language, as defined by a given DTD. This is a kind of abstract interpretation, which can be executed on the fly and in linear time when parsing the XSLT program. Generated error messages are located accurately to a child subsequence of a single result element node. Apparently the method eliminates a considerable share of XSLT programming errors, on the same order of magnitude as a full fledged global control-flow analysis. #/abstract #bibentry TranconyWidemann2015d #kind technicalreport \\ 70 70 #title Simple and Effective Relation-Based Approaches To XPath and XSLT Type Checking #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #lang en #booktitle Programmiersprachen und Rechenkonzepte #series Arbeitsberichte Computersprachen #publisher Technische Universität Wien #year 2015 #place Wien #note (in press) \\% FILE /doc/papers/tpath/absint_txsl.{tex,pdf} #abstract en XPath is a language for addressing parts of an XML document. We give an abstract interpretation of XPath expressions in terms of relations on document node types. Node-set-related XPath language constructs are mapped straightforwardly onto basic, well-understood and easily computable relational operations. Hence our interpretation gives both extremely concise type-level denotational semantics and a practical analysis tool for the node-set fragment of the XPath\,1.0 language. This method is part of the TPath implementation of XPath. #nl XSL-T is a pure functional language for transforming XML documents. For the most common case, the transformation into an XML document, type checking of the transformation code is unfeasible in general, but strongly required in practice. It turned out that the relational approach of TPath can be carried over to check all fragments of the result language, which are contained verbartim in the transformation code. This leads to a technique called ``Fragmented Validation'' and is part of the txsl implementation of XSL-T. #/abstract #bibentry paisleyXpath #kind article #authors #author Baltasar Trancón y Widemann #author Markus Lepper #title Interpreting XPath by Iterative Pattern Matching in Paisley #lang en #url http://ceur-ws.org/Vol-1335/ #booktitle Proc. Functional--Logic Programming (WFLP 2014) #year 2014 #publisher EPTCS #volume 234 #place world \\source /wflp2014/wflp2014.tex #abstract en The Ppaisley architecture is a light-weight EDSL for non-deterministic pattern matching. It automates the querying of arbitrary object-oriented data models in a general-purpose programming language, using API, libraries and simple programming patterns in a portable and non-invasive way. The core of Paisley has been applied to real-world applications. Here we discuss the extension of Paisley by pattern iteration, which adds a Kleene algebra of pattern function composition to the unrestricted use of the imperative host language, thus forming a hybrid object-oriented--functional--logic framework. We subject it to a classical practical problem and established benchmarks: the node-set fragment of the XPath language for querying W3C XML document object models. #/abstract #bibentry isola2014 #kind article \\ 102 statt 104 #title Rewriting Object Models With Cycles and Nested Collections #authors #author Markus Lepper #author Baltasar Trancòn y Widemann #lang en #isbn 978-3-662-45233-2 #doi 10.1007/978-3-662-45234-9_31 #url http://dx.doi.org/10.1007/978-3-662-45234-9_31 \\ FILE POS rewriter2012/rew2014.tex #year 2014 #booktitle Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change #series LNCS #volume 8802 #editors #author Margaria, Tiziana #author Steffen, Bernhard #publisher Springer #place Berlin Heidelberg #pages 445-460 #note (Here are #link ../papers/slides_isola.pdf #text the slides.#/link)#/note #abstract en Metaprogramming with classical compiler technology is similar to model-based code generation. We discuss a particular tool, umod, that generates complex data model implementations in Java, and a particular aspect of its support for declarative programming: The rewriting of data models in object-oriented style, based on the visitor pattern, with support for arbitrary reference graphs and nested collection-valued fields. We demonstrate that concerns of both compiler theory and model-based development apply, and that the distinction is overshadowed by a general commitment to semantic rigour. #/abstract #bibentry calco2014 #kind article #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #title Towards (Co)Algebraic Semantics of the Object-Oriented Rewriter Style Pattern #lang en #url http://www-compsci.swan.ac.uk/~csmona/CALCO-EI-Selected-Papers.pdf #booktitle Calco Early Ideas, Selected Papers #editors #author Bartek Klin #author Monika Seisenberger #year 2014 #place theWeb #pages 49--62 #abstract en Conventional object-oriented programming languages provide expressive, declarative means for data abstraction, but they lack similarly powerful counterparts for control abstraction. Style patterns have been developed as informal solutions to the problem. They fall short of real abstraction, because they mostly give no criteria how to use imperative language elements in a disciplined way for denotational semantics to be applied effectively. We discuss the Rewriter pattern, an extension of the well-known Visitor pattern, that expresses type-directed rewriting rules for arbitrary object graphs in a relatively declarative style. We demonstrate how to ground the Rewriter pattern in coalgebraic recursion theory, in particular the course-of-argument coiteration scheme, based on a formal model of object graphs as finite coalgebras. #/abstract #bibentry TranconyWidemann2013e #kind article #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #title Syntaxanalyse auf Wiedervorlage #lang de #url http://wcms.itz.uni-halle.de/download.php?down=35800&elem=2813059 #booktitle Proceedings 17.\ Kolloquium Programmiersprachen (KPS 2013) #editors #author Picht, R #author Zimmermann, W. #publisher Institute of Computer Science, Martin-Luther-Universität Halle-Wittenberg #pages 151--154 #series Technical Report #number 2014/02 #place Halle, Wittenberg #year 2013 #/bibentry \\exported from www.journals.elsevier.com/science-of-computer-programming #bibentry Jakumeit201441 #kind article \\ 165 statt 167 #title A survey and comparison of transformation tools based on the transformation tool contest #authors #author Edgar Jakumeit #author Sebastian Buchwald #author Dennis Wagelaar #author Li Dan #author Ábel Hegedüs #author Markus Herrmannsdörfer #author Tassilo Horn #author Elina Kalnina #author Christian Krause #author Kevin Lano #author Markus Lepper #author Arend Rensink #author Louis Rose #author Sebastian Wätzoldt #author Steffen Mazanek \* keywords Graph rewriting", keywords Model transformation", keywords Tool survey", keywords Transformation tool contest ", *\ #issn 0167-6423 #doi http://dx.doi.org/10.1016/j.scico.2013.10.009", #url http://www.sciencedirect.com/science/article/pii/S0167642313002803", #journal Science of Computer Programming #volume 85 Part A #number 0 #pages 41 - 99 #year 2014 #place The Web #note Special issue on Experimental Software Engineering in the Cloud(ESEiC) #abstract en Abstract Model transformation is one of the key tasks in model-driven engineering and relies on the efficient matching and modification of graph-based data structures; its sibling graph rewriting has been used to successfully model problems in a variety of domains. Over the last years, a wide range of graph and model transformation tools have been developed – all of them with their own particular strengths and typical application domains. In this paper, we give a survey and a comparison of the model and graph transformation tools that participated at the Transformation Tool Contest 2011. The reader gains an overview of the field and its tools, based on the illustrative solutions submitted to a Hello World task, and a comparison alongside a detailed taxonomy. The article is of interest to researchers in the field of model and graph transformation, as well as to software engineers with a transformation task at hand who have to choose a tool fitting to their needs. All solutions referenced in this article provide a \{SHARE\} demo. It supported the peer-review process for the contest, and now allows the reader to test the tools online. #/abstract \* =============== FIXME @article{Jakumeit2013, title = "A survey and comparison of transformation tools based on the transformation tool contest ", journal = "Science of Computer Programming ", volume = "", number = "0", pages = " - ", year = "2013", note = "", issn = "0167-6423", doi = "http://dx.doi.org/10.1016/j.scico.2013.10.009", url = "http://www.sciencedirect.com/science/article/pii/S0167642313002803", author = "Edgar Jakumeit and Sebastian Buchwald and Dennis Wagelaar and Li Dan and Ábel Hegedüs and Markus Herrmannsdörfer and Tassilo Horn and Elina Kalnina and Christian Krause and Kevin Lano and Markus Lepper and Arend Rensink and Louis Rose and Sebastian Wätzoldt and Steffen Mazanek", keywords = "Graph rewriting", keywords = "Model transformation", keywords = "Tool survey", keywords = "Transformation tool contest " } Edgar Jakumeit, Sebastian Buchwald, Dennis Wagelaar, Li Dan, Ábel Hegedüs, Markus Herrmannsdörfer, Tassilo Horn, Elina Kalnina, Christian Krause, Kevin Lano, Markus Lepper, Arend Rensink, Louis Rose, Sebastian Wätzoldt, Steffen Mazanek A survey and comparison of transformation tools based on the transformation tool contest Science of Computer Programming, Available online 7 November 2013 http://dx.doi.org/10.1016/j.scico.2013.10.009 ======================================= *\ #bibentry tl_paisleyWflp2013 #kind article \\ 236 statt 238 +++ #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #title Some Experiments on Light-Weight Object-Functional-Logic Programming in Java with Paisley #lang en \\ ?? FIXME #bib-url #url http://www.informatik.uni-kiel.de/uploads/tx_publication/tr-1306-bericht.pdf #issn 2192-6247 #booktitle Kiel Declarative Programming Days 2013 \\ Proc. 22nd Int. Workshop on Functional and (Constraint) Logic Programming #year 2013 #place Kiel #publisher Christian-Albrechts-Universität zu Kiel #series Technische Berichte des Instituts für Informatik #volume 1306 #pages 32-46 #abstract en The #src{Paisley} library and embedded domain-specific language provides light-weight nondeterministic pattern matching on the Java platform. It fully respects the imperative semantics and data abstraction of the object-oriented paradigm, while leveraging the declarative styles of pattern-based querying and searching of complex object models. Previous papers on #src{Paisley} have focused on the functional paradigm and data flow issues. Here, we illustrate its use under the logic paradigm. We discuss the expressiveness and evaluate the performance of #src{Paisley} in terms of the well-known combinatorial search problem ``send more money'' and its generalizations. #/abstract #/bibentry #bibentry tl_paisleyKdpd2013 #kind article #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #title Some Experiments on Light-Weight Object-Functional-Logic Programming in Java with Paisley #lang en #booktitle Declarative Programming and Knowledge Management #year 2014 #place Berlin #publisher Springer International Publishing #series LNAI #volume 8439 #pages 218-233 #abstract en The #src{Paisley} library and embedded domain-specific language provides light-weight nondeterministic pattern matching on the Java platform. It fully respects the imperative semantics and data abstraction of the object-oriented paradigm, while leveraging the declarative styles of pattern-based querying and searching of complex object models. Previous papers on #src{Paisley} have focused on the functional paradigm and data flow issues. Here, we illustrate its use under the logic paradigm. We discuss the expressiveness and evaluate the performance of #src{Paisley} in terms of the well-known combinatorial search problem ``send more money'' and its generalizations. #/abstract #bibentry lt_xslt13 #kind article #title Fragmented Validation --- A Simple and Efficient Contribution to XSLT Checking (Extended Abstract) #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar #lang en #isbn 9783642388835 #booktitle Proc. ICMT 2013, Int. Conference on Theory and Practice of Model Transformations #publisher Springer #series LNCS #volume 7909 #year 2013 #place Berlin #abstract en XSLT 1.0 is a standardized functional programming language and widely used for defining transformations on XML models and documents, in many areas of industry and publishing. The problem of \emph{XSLT type checking} is to verify that a given transformation, when applied to an input which conforms to a given structure definition, e.g. an XML DTD, will always produce an output which adheres to a second structure definition. This problem is known to be undecidable for the full range of XSLT and document structure definition languages. Either one or both of them must be significantly restricted, or only approximations can be calculated. #nl The algorithm presented here takes a different approach towards type correct XSLT transformations. It does not consider the input document at all. Instead it parses the fragments of the output document contained #emph{verbatim} in the transformation code and verifies that these can potentially appear in the result language, as defined by a given DTD. This is a kind of #emph{abstract interpretation}, which can be executed on the fly and in linear time when parsing the XSLT program. Generated error messages are reasonable accurate. To our practical experience, this eliminates a considerable share of XSLT programming errors. #/abstract #bibentry paisleyAtps #kind article #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #title Paisley: A Pattern Matching Library for Arbitrary Object Models #lang en #isbn 978-3-88579-609-1 #booktitle Proc. 6. Arbeitstagung Programmiersprachen (ATPS 2013) #series LNI #editors #author Stefan Wagner #author Horst Lichter #volume 215 #pages 171-186 #year 2013 #place Bonn #publisher Gesellschaft für Informatik #abstract en Professional development of software dealing with structured models requires more systematic approach and semantic foundation than standard practice in general-purpose programming languages affords. One remedy is to integrate techniques from other programming paradigms, as seamless as possible and without forcing programmers to leave their comfort zone. Here we present a tool for the implementation of #emph{pattern matching} as fundamental means of automated data extraction from models of arbitrary shape and complexity in a general-purpose programming language. The interface is simple but, thanks to elaborate and rigorous design, is also light-weight, portable, non-invasive, type-safe, modular and extensible. It is compatible with object-oriented data abstraction and has full support for nondeterminism by backtracking. The tool comes as a library consisting of two levels: elementary pattern algebra (generic, highly reusable) and pattern bindings for particular data models (specific, fairly reusable, user-definable). Applications use the library code in a small number of idiomatic ways, making pattern-matching code declarative in style, easily writable, readable and maintainable. Library and idiom together form a tightly embedded domain-specific language; no extension of the host language is required. The current implementation is in Java, but assumes only standard object-oriented features, and can hence be ported to other mainstream languages. #/abstract #bibentry tl_paisley #kind article #title Paisley: Pattern matching a la carte #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #lang en #isbn 978-3-642-30475-0 #series LNCS #volume 7307 #publisher Springer #booktitle Theory and Practice of Model Transformations 5th. International Conference, ICMT 2012, Praha #place Berlin, Heidelberg, New York #editors #author Zhenjiang Hu #author Juan de Lara #year 2012 #note Here are the #link http://bandm.eu/metatools/docs/papers/slides_icmt2012.pdf #text slides of our talk #/link on the #link http://www.model-transformation.org #text ICMT 2012 conference.#/link #abstract en #p Professional development of software dealing with structured models requires more systematic approach and semantic foundations than standard practice in general-purpose programming languages affords. One remedy is to move to domain-specific environments. Here, instead, we present a tool for the implementation of pattern matching as fundamental means of automated data extraction from complex models in a general-purpose programming language. The interface is simple but, thanks to elaborate and rigorous design, is also light-weight, portable, non-invasive, type-safe, modular and extensible. It is compatible with object-oriented data abstraction and has full support for nondeterminism by backtracking. The tool comes as a library consisting of two levels: elementary pattern algebra (generic, highly reusable) and pattern bindings for particular data models (specific, fairly reusable, user-definable). Applications use the library code in a small number of idiomatic ways, making pattern-matching code declarative in style, easily writeable, readable and maintainable. Library and idiom together form a tightly embedded domain-specific language; no extension of the host language is required. The current implementation is in Java, but assumes only standard object-oriented features, and can hence be ported to other mainstream languages. #/abstract #bibentry lt_keod2011 #kind article #title d2d --- a Robust Front-End for Prototyping, Authoring and Maintaining XML Encoded Documents by Domain Experts #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar \\ #url /home/lepper/metatools/doc/papers/ddd2011/keod_paper90_lepper_trancon.pdf #url http://bandm.eu/metatools/docs/papers/keod_paper90_lepper_trancon.pdf #isbn 978-989-8425-80-5 #doi 10.5220/0003664904490456 #booktitle Proceedings of KEOD 2011 International Conference on Knowledge Engieering and Ontology Design #publisher SciTePress #place Portugal #year 2011 #editors #author Joaquim Filipe #author Jan L.G. Diets #pages 449-456 #note This text has been presented as a \\ cannot be compiled on "heine" due to old tex installation ! \\ #link /home/lepper/metatools/doc/papers/ddd2011/poster_d2d_keod_2011.pdf \\ #link http://markuslepper.eu/papers/poster_d2d_keod_2011.pdf #link http://bandm.eu/metatools/docs/papers/poster_d2d_keod_2011.pdf #text poster#/link on the #link http://keod.ic3k.org #text KEOD 2011 conference.#/link #abstract en In many cases, domain experts are used to write down their knowledge in contiguous texts. A standard way to facilitate the automated processing of such texts is to add mark-up, for which the family of XML-based standards is current best practice. But the default textual appearance of XML mark-up is not suited to be typed, read and edited by humans. #nl The authors' #bold d2d notation#/bold provides an alternative which uses only one single escape character. Its documents can be fluently typed, understood and edited by humans almost in the same way as non-tagged text. In the last years, the d2d language underwent a development guided by practical experiences. In practice, #emph!robustness! turned out to be highly desirable: This lead to revised semantics and a new algorithm which realizes a #emph!total! translation function, This article gives the complete operational semantics of this algorithm after a short sketch of its context. #/abstract #bibentry lt_ddd2013 #kind article #title D2d -- XML for Authors #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar #lang en \\ FIXME FEHLT NOCH #isbn 978-82-7368-447-9 \\ #issn 0806-3036 \\ #url http://urn.nb.no/URN:NBN:no-65294 #booktitle Tagungsband des 36ten Jahrestreffens der GI-Fachgruppe “Programmiersprachen und Rechenkonzepte” #series IFI Reports #publisher University of Oslo #year 2019 #place Oslo #bibentry lt_ttc2011 #kind article #title Solving the TTC 2011 Compiler Optimization Task with meta-tools #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar #doi 10.4204/EPTCS.74 #booktitle TTC 2011: Fifth Transformation Tool Contest #publisher TTC 2011 group #journal EPTCS #volume 74 #place (www) #year 2011 #editors #author Pieter Van Gorp #author Steffen Mazanek #author Louis Rose #note (The DOI link brings you to all texts of the EPTCS 74 journal) #abstract en The authors' metatools are a collection of tools for generic programming. This includes generating Java sources from mathematically well-founded specifications, as well as the creation of strictly typed document object models for XML encoded texts. In this context, almost every computer-internal structure is treated as a ``model'', and every computation is a kind of model transformation. #nl This concept differs significantly from ``classical model transformation'' executed by specialized tools and languages. Therefore it seemed promising to the organizers of the TTC 2011 in Zürich, as well as to the authors, to apply meta-tools to one of the challenges, namely to the "compiler optimization task", #nl This is a report on the resulting experiences. #/abstract \\lt11a doublette !?!!? #bibentry lt11a \\lt:visitorOpt #kind article #title Optimization of Visitor Performance by Reflection-Based Analysis #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar #isbn 978-3-642-21731-9 \\ NO RIGHTS ! #url /home/lepper/metatools/doc/papers/zuerich11/zuerich.pdf #series LNCS #volume 6707 #publisher Springer #place Berlin, Heidelberg, New York #year 2011 #note Here are the \\ cannot be compiled on "heine" due to old tex installation ! \\ #link /home/lepper/metatools/papers/zuerich11/zuerich.pdf \\ #link http://markuslepper.eu/papers/zuerich2011.pdf #link http://bandm.eu/metatools/docs/papers/slides-zuerich2011.pdf #text slides of ML's talk in Zürich #/link #abstract en Visitors are a well-known and powerful design pattern for processing regular data structures and for combining declarative and imperative coding styles. The authors' umod model generator creates java data models from a concise and algebraic notation. It is primarily used to model intermediate representations of computer languages. The user defines visitor code by extending skeleton classes, which are generated according to traversal annotations in the model. Since the generated code on its own executes the pure traversal and no semantic side-effects, traversals are redundant unless some user-overridden method is eventually invoked. We present a reflection-based control flow analysis to detect this situation and prune the traversal transparently. With a well-stratified model, this may lead to substantial increase in performance. #/abstract #bibentry tlw03 #kind article #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #author Wieland, Jacob #title Automatic Construction of XML-based Tools seen as Meta-Programming #url http://markuslepper.eu/papers/asexse.pdf #issn 0928-8910 #year 2003 #journal Automated Software Engineering #publisher Kluwer Academic Press #place Dordrecht #volume 10 \\ ??? #number 1 \\ ?? #pages 23-38 #editors #author Mascolo #author Emmerich #author Finkelstein #abstract en This article presents XML-based tools for parser generation and data binding generation. The underlying concept is that of transformation between formal langs, which is a form of meta-programming. We discuss the benefits of such a declarative approach with well-defined semantics: productivity, maintainability, verifiability, performance and safety. #nl #nl Keywords: XML, SAX, DOM, TDOM, ANTLR, XANTLR, compiler construction, meta-programming,parser generation, data binding generation #/abstract #bibentry ltw01b #kind inproceedings #authors #author Lepper, Markus #author Trancón y Widemann, Baltasar #author Wieland, Jacob #title Minimze Mark-Up ! - Natural Writing Should Guide the Design of Textual Modeling \\ #language en #isbn 3-540-42866-6 #url http://markuslepper.eu/papers/er2001.pdf #booktitle Conceptual Modeling -- ER2001 #year 2001 \\ #month November #series LNCS #volume 2224 #publisher Springer #place Berlin \\ #address Berlin #bibentry tlw01a #kind inproceedings #authors #author Trancón y Widemann, Baltasar #author Lepper, Markus #author Wieland, Jacob #title Automated Generation of Abstract Syntrax Trees Represented as Typed DOM XML #lang en #url http://markuslepper.eu/papers/xse2001.pdf #year 2001 #place London #booktitle : Proceedings of XML and Software Engineering (XSE 2001) #pages 20-23 #publisher University College London #editors #author W. Emmerich #author C. Mascolo #abstract en The XANTLR/TDOM project is an implementation of a #emph!typed! XML Document Object Model initially used to represent abstract syntax trees in a compiler project. Tree classes, SAX event receivers, visitor classes and DTD are automatically derived from a sparsely annotated ANTLR grammar. #nl Mapping tag values onto the type system of the target lang allows for the compilation of syntax, mostly yielding large increases in computational performance. Automized generation significantly decreases programming efforts and increases maintainability. #nl The currently supported target lang is JAVA. #/abstract \\ ================================================================================ #h1#title Publications of Others #biblist #sortMethod key #abstractLangs !en! #abstractHiding #lang en #bibentry marnev05 #kind article #title On the Complexity of Typechecking Top-Down XML Transformations #authors #author Wim Martens #author Frank Neven #issn 0304-3975 #volume 336, #journal Theoretical Computer Science #pages 153--180 #year 2005 #place Amsterdam #publisher Elsevier #bibentry relaxng #kind webpage #title RELAX NG home page #author Murata Makoto #url http://relaxng.org #place Earth #year 2010 #bibentry antlr #kind webpage #title ANTLR homepage #author Terence Parr #url http://antlr.org #place San Francisco #year 2009 #bibentry antlr2doc #kind webpage #author Terence Parr #title ANTLR 2(sic!) documentation #url http://www.antlr2.org/doc #place San Francisco #year 2007 #bibentry jCodeConv #kind webpage #title Code Conventions for the Java Programming Language #url http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html \\ now at : http://www.oracle.com/technetwork/java/codeconv-138413.html #place Santa Clara, CA #year 1999 #month April #publisher sun microsystems #bibentry soap #kind webpage #title SOAP Version 1.2 #url http://www.w3.org/TR/soap12-part1 #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 2007 #bibentry xercesj #kind webpage #title Xerces Java \\ #author FIXME #url http://xerces.apache.org/xerces-j #publisher apache foundation #place Earth #year 2005 #bibentry Hug95 #kind incollection #author Hughes, John #title The Design of a Pretty-printing Library #latextitle "{T}he {D}esign of a {P}retty-printing {L}ibrary" #url http://www.cs.chalmers.se/~rjmh/Papers/pretty.ps #publisher Springer #year 1995 #place Berlin, New York, Heidelberg #booktitle Advanced Functional Programming #series Lecture Notes in Computer Science #volume 925 #editor Jeuring J. and Meijer E. \\ BROKEN ?? #url http://citeseer.ist.psu.edu/hughes95design.html #bibentry isolanguage #kind webpage #title Codes for the Representation of Names of Languages \\?? #link #url http://www.loc.gov/standards/iso639-2/php/code_list.php \\?? #refdate 2010 #url http://www.loc.gov/standards/iso639-2/php/code_list.php #place Washington D.C: #year 2010 #month October #publisher Library of Congress #bibentry w3cDom #kind webpage #title W3C Document Object Model #url http://www.w3.org/standards/techs/dom #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 2004 #bibentry Sax04 #kind webpage #authors #author David Brownell #author David Megginson #title Simple API for XML #url http://www.saxproject.org #publisher Sax project #place Earth #year 2004 #bibentry xml #kind webpage #title Extensible Markup Language (XML) 1.0 (Fifth Edition) \\ --- W3C Recommendation 26 November 2008 #subtitle W3C Recommendation 26 November 2008 #url http://www.w3.org/TR/2008/REC-xml-20081126/ #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 2008 #bibentry xhtml10 #kind webpage #title XHTML 1.0 The Extensible HyperText Markup Language (Second Edition) \\ --- W3C Recommendation 26 January 2000 #subtitle W3C Recommendation 26 January 2000 #url http://www.w3.org/TR/xhtml1/ #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 2002 #bibentry xml-ns #kind webpage #title Namespaces in XML 1.0 (Third Edition) #url http://www.w3.org/TR/REC-xml-names/ #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 2009 #bibentry xml-ns-xml #kind webpage \\ #author FIXME #title The "xml:" Namespace #url http://www.w3.org/XML/1998/namespace #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 1998 #bibentry xslt1_0 #kind webpage \\ #author FIXME #title XSL Transformations (XSLT) Version #src!1.0! #url http://www.w3.org/TR/1999/REC-xslt-19991116 #publisher W3c Consortium #place Cambridge, MA, Sophia-Antipolis, Tokyo #year 1999 #eof