publications: - title: "Academic Software Development Tools and Techniques" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Holger M. Kienle" link: "https://researchr.org/alias/holger-m.-kienle" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Adrian Kuhn" link: "http://scg.unibe.ch/akuhn" year: "2008" doi: "http://dx.doi.org/10.1007/978-3-642-02047-6_10" links: doi: "http://dx.doi.org/10.1007/978-3-642-02047-6_10" researchr: "https://researchr.org/publication/WuytsKMBK08" cites: 0 citedby: 0 pages: "87-103" booktitle: "ECOOPW" kind: "inproceedings" key: "WuytsKMBK08" - title: "Managing Unanticipated Evolution of Software Architectures" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Tom Mens" link: "http://staff.umh.ac.be/Mens.Tom/" - name: "Wouters, Bart" link: "https://researchr.org/alias/wouters%2C-bart" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1999" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Mens99b.pdf" tags: - "software architecture" - "architecture" - "software evolution" researchr: "https://researchr.org/publication/Mens99b" cites: 0 citedby: 0 booktitle: "Proceedings of ECOOP '99 Workshop on Architectural Evolution" kind: "inproceedings" key: "Mens99b" - title: "Introduction" author: - name: "Noury Bouraqadi" link: "https://researchr.org/alias/noury-bouraqadi" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://dx.doi.org/10.1016/j.cl.2005.02.002" links: doi: "http://dx.doi.org/10.1016/j.cl.2005.02.002" researchr: "https://researchr.org/publication/BouraqadiW05" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "31" number: "3-4" pages: "103-105" kind: "article" key: "BouraqadiW05" - title: "Symbiotic Reflection between an Object-Oriented and a Logic Programming Language" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" year: "2001" abstract: "Meta-programming is the act of using one system or language to reason about another one. Reflection describes systems that have access to and change a causally connected representation of themselves, hence leading to self-extensible systems . Up to now, most of the reflective languages have been implemented in the same paradigm. In this paper, we propose \\emph{symbiotic reflection} as a way to integrate a meta programming language with the object-oriented language it reasons about and is implemented in. New to this approach is that any element of the implementation language can be reasoned about and acted upon (not only the self representation), and that both languages are of different paradigms. Moreover, every language implementer that is faced with the problem of allowing the base language to access the underlying meta-language has to solve the problem of enabling entity transfer between both worlds. We propose a uniform schema, called upping/downing, to this problem that avoid explicit wrapping or typechecking. We illustrate this with SOUL (the Smalltalk Open Unification Language), a logic programming language in symbiotic reflection with the object-oriented language Smalltalk. We show how SOUL does logic reasoning directly on Smalltalk objects, and how to use this to implement type snooping" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt01a.pdf" tags: - "programming languages" - "object-oriented programming" - "rule-based" - "meta programming" - "meta-model" - "XML" - "XML Schema" - "type system" - "source-to-source" - "programming paradigms" - "logic programming" - "programming" - "subject-oriented programming" - "logic" - "Meta-Environment" - "reflection" - "extensible language" - "systematic-approach" - "feature-oriented programming" - "open-source" - "meta-objects" researchr: "https://researchr.org/publication/Wuyt01a" cites: 0 citedby: 0 booktitle: "ECOOP 2001 International Workshop on MultiParadigm Programming with Object-Oriented Languages" kind: "inproceedings" key: "Wuyt01a" - title: "A Comparative Framework for Design Recovery Tools" author: - name: "Yann-Gaël Guéhéneuc" link: "http://www.yann-gael.gueheneuc.net/" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" abstract: "While many commercial and academic design recovery tools have been proposed over the years, assessing their relevance and comparing them is difficult due to the lack of a well-defined, comprehensive, and common framework. In this paper, we introduce such a common comparative framework. The framework builds upon our own experience and extends existing comparative frameworks. We illustrate the comparative framework on two specific design recovery tools." links: "url": "http://www.yann-gael.gueheneuc.net/Work/Publications/Documents/CSMR06b.doc.pdf" tags: - "design" researchr: "https://researchr.org/publication/Gueh06a" cites: 0 citedby: 0 booktitle: "Conference on Software Maintenance and Reengineering (CSMR 2006)" kind: "inproceedings" key: "Gueh06a" - title: "Evolution Persistence For Objects" author: - name: "Frédéric Pluquet" link: "http://decomp.ulb.ac.be/frdricpluquet/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" links: "url": "http://decomp.ulb.ac.be:9090/FrepSite/Papers/Evolution%20Persistence%20For%20Objects.pdf" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/Pluq06a" cites: 0 citedby: 0 booktitle: "Proceedings of the ERCIM Working Group on Software Evolution (2006)" kind: "inproceedings" key: "Pluq06a" - title: "Report of the 7th ECOOP'06 Workshop on Object-Oriented Reengineering" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Serge Demeyer" link: "http://win.ua.ac.be/~sdemey/" - name: "Yann-Gaël Guéhéneuc" link: "http://www.yann-gael.gueheneuc.net/" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" year: "2007" links: "url": "http://www.info.ucl.ac.be/~km/MyResearchPages/publications/workshop_report/WR_2007_ECOOP2006_WOOR.pdf" researchr: "https://researchr.org/publication/Wuyt07a" cites: 0 citedby: 0 booktitle: "Object-Oriented Technology. ECOOP'06 Workshop Reader" kind: "inproceedings" key: "Wuyt07a" - title: "Guest Editors Introduction: Dynamically Typed Languages" author: - name: "Laurence Tratt" link: "http://tratt.net/laurie/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2007" doi: "http://doi.ieeecomputersociety.org/10.1109/MS.2007.140" links: doi: "http://doi.ieeecomputersociety.org/10.1109/MS.2007.140" researchr: "https://researchr.org/publication/TrattW07" cites: 0 citedby: 0 journal: "IEEE Software" volume: "24" number: "5" pages: "28-30" kind: "article" key: "TrattW07" - title: "Understanding Object-Oriented Programs through Declaratice Event Analysis" author: - name: "Tamar Richner" link: "https://researchr.org/alias/tamar-richner" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1998" tags: - "object-oriented programming" - "program analysis" - "analysis" - "subject-oriented programming" - "feature-oriented programming" researchr: "https://researchr.org/publication/RichnerDW98" cites: 0 citedby: 0 pages: "78-79" booktitle: "ECOOPW" kind: "inproceedings" key: "RichnerDW98" - title: "Dynamic Languages and Applications, Report on the Workshop {Dyla}'07 at ECOOP 2007" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Wolfgang De Meuter" link: "https://researchr.org/alias/wolfgang-de-meuter" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2008" doi: "10.1007/978-3-540-78195-0" abstract: "Following last two years' workshop on dynamic languages at the ECOOP conference, the Dyla 2007 workshop was a successful and popular event. As its name implies, the workshop's focus was on dynamic languages and their applications. Topics and discussions at the workshop included macro expansion mechanisms, extension of the method lookup algorithm, language interpretation, reflexivity and languages for mobile ad hoc networks. The main goal of this workshop was to bring together different dynamic language communities and favouring cross communities interaction. Dyla 2007 was organised as a full day meeting, partly devoted to presentation of submitted position papers and partly devoted to tool demonstration. All accepted papers can be downloaded from the workshop's web site. In this report, we provide an overview of the presentations and a summary of discussions." links: "url": "http://dyla2007.unibe.ch/http://www.iam.unibe.ch/~scg/Archive/Papers/Berg08bDyla07Report.pdfhttp://www.springer.com/computer/programming/book/978-3-540-78194-3" tags: - "macros" - "web applications" - "mobile" researchr: "https://researchr.org/publication/Berg08b" cites: 0 citedby: 0 booktitle: "Object-Oriented Technology. ECOOP 2007 Workshop Reader" kind: "inproceedings" key: "Berg08b" - title: "Implementing Partial Persistence in Object-Oriented Languages" author: - name: "Frédéric Pluquet" link: "https://researchr.org/alias/fr%C3%A9d%C3%A9ric-pluquet" - name: "Stefan Langerman" link: "https://researchr.org/alias/stefan-langerman" - name: "Antoine Marot" link: "https://researchr.org/alias/antoine-marot" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2008" doi: "http://www.siam.org/proceedings/alenex/2008/alx08_04pluquetf.pdf" links: doi: "http://www.siam.org/proceedings/alenex/2008/alx08_04pluquetf.pdf" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/PluquetLMW08" cites: 0 citedby: 0 pages: "37-48" booktitle: "alenex" kind: "inproceedings" key: "PluquetLMW08" - title: "Applying Experiences with Declarative Codifications of Software Architectures on COD" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Gabriela Ar{\\'e}valo" link: "https://researchr.org/alias/gabriela-ar%7B%5Eb%27e%7Dvalo" year: "2001" abstract: "This position paper presents some preliminary work we made for applying declaractive component oriented design in the context of embedded devices. We quickly describes COMES the model we develop and present how logic rules can be used to describe architectures." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt01d.pdf" tags: - "design science" - "rule-based" - "software architecture" - "software components" - "meta-model" - "embedded software" - "architecture" - "software component" - "rules" - "e-science" - "context-aware" - "logic" - "Meta-Environment" - "design" researchr: "https://researchr.org/publication/Wuyt01d" cites: 0 citedby: 0 booktitle: "Ecoop 6th International Workshop on Component-Oriented Programming" kind: "inproceedings" key: "Wuyt01d" - title: "Stateful traits and their formalization" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2008" doi: "http://dx.doi.org/10.1016/j.cl.2007.05.003" links: doi: "http://dx.doi.org/10.1016/j.cl.2007.05.003" researchr: "https://researchr.org/publication/BergelDNW08" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "34" number: "2-3" pages: "83-108" kind: "article" key: "BergelDNW08" - title: "Fast type reconstruction for dynamically typed programming languages" author: - name: "Frédéric Pluquet" link: "http://decomp.ulb.ac.be/frdricpluquet/" - name: "Antoine Marot" link: "http://decomp.ulb.ac.be/antoinemarot" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1640134.1640145" links: doi: "http://doi.acm.org/10.1145/1640134.1640145" "url": "http://roelwuyts.be/publications/Pluq09b-RoelTyper.pdf" tags: - "programming languages" - "programming" researchr: "https://researchr.org/publication/Pluq09b" cites: 0 citedby: 0 booktitle: "DLS '09: Proceedings of the 5th symposium on Dynamic languages" kind: "inproceedings" key: "Pluq09b" - title: "Pareto based run-time manager for overlapped resource sharing" author: - name: "Narasinga Rao Miniskar" link: "https://researchr.org/alias/narasinga-rao-miniskar" - name: "Satya Munaga" link: "https://researchr.org/alias/satya-munaga" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Francky Catthoor" link: "https://researchr.org/alias/francky-catthoor" year: "2009" links: "url": "http://roelwuyts.be/publications/Mini09a-OverlappedResourceSharing.pdf" tags: - "rule-based" researchr: "https://researchr.org/publication/Mini09a" cites: 0 citedby: 0 kind: "inproceedings" key: "Mini09a" - title: "Supporting software development through declaratively codified programming patterns" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Isabel Michiels" link: "https://researchr.org/alias/isabel-michiels" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2002" doi: "http://dx.doi.org/10.1016/S0957-4174(02)00076-3" links: doi: "http://dx.doi.org/10.1016/S0957-4174(02)00076-3" tags: - "programming" researchr: "https://researchr.org/publication/MensMW02%3A0" cites: 0 citedby: 0 journal: "eswa" volume: "23" number: "4" pages: "405-413" kind: "article" key: "MensMW02:0" - title: "Composing aspects with aspects" author: - name: "Antoine Marot" link: "http://decomp.ulb.ac.be/antoinemarot" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2010" doi: "http://doi.acm.org/10.1145/1739230.1739249" links: doi: "http://doi.acm.org/10.1145/1739230.1739249" researchr: "https://researchr.org/publication/MarotW10" cites: 0 citedby: 0 pages: "157-168" booktitle: "AOSD" kind: "inproceedings" key: "MarotW10" - title: "Components for Embedded Software --- The PECOS Approach" author: - name: "Michael Winter" link: "https://researchr.org/alias/michael-winter" - name: "Thomas Gen{\\ss}ler" link: "https://researchr.org/alias/thomas-gen%7B%5Ebss%7Dler" - name: "Alexander Christoph" link: "https://researchr.org/alias/alexander-christoph" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Gabriela Ar{\\'e}valo" link: "https://researchr.org/alias/gabriela-ar%7B%5Eb%27e%7Dvalo" - name: "Peter M\\\"uller" link: "https://researchr.org/alias/peter-m%5Eb%22uller" - name: "Christian Stich" link: "https://researchr.org/alias/christian-stich" - name: "Bastiaan Sch\\\"onhage" link: "https://researchr.org/alias/bastiaan-sch%5Eb%22onhage" year: "2002" abstract: "This paper presents a domain specific composition language called CoCo. The CoCo language has been developed in the context of the PECOS project which aims at enabling component-based technology for a certain class of embedded systems called \"field devices\"." links: "url": "http://www.iam.unibe.ch/~scg/Archive/pecos/public_documents/Wint02a.pdf" tags: - "rule-based" - "software components" - "embedded software" - "composition" - "software component" - "context-aware" - "systematic-approach" - "domain-specific language" researchr: "https://researchr.org/publication/Wint02a" cites: 0 citedby: 0 booktitle: "Proc. Second International Workshop on Composition Languages" kind: "inproceedings" key: "Wint02a" - title: "Managing Unanticipated Evolution of Software Architectures" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Tom Mens" link: "http://staff.umh.ac.be/Mens.Tom/" - name: "Bart Wouters" link: "https://researchr.org/alias/bart-wouters" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1999" tags: - "software architecture" - "architecture" - "software evolution" researchr: "https://researchr.org/publication/MensMWW99" cites: 0 citedby: 0 pages: "75-76" booktitle: "ECOOPW" kind: "inproceedings" key: "MensMWW99" - title: "Fifth International Workshop on Object-Oriented Reengineering" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Stéphane Ducasse" link: "https://researchr.org/alias/st%C3%A9phane-ducasse" - name: "Serge Demeyer" link: "https://researchr.org/alias/serge-demeyer" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" year: "2004" doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3344&spage=177" links: doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3344&spage=177" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/WuytsDDM04" cites: 0 citedby: 0 pages: "177-186" booktitle: "ECOOPW" kind: "inproceedings" key: "WuytsDDM04" - title: "Traits: A mechanism for fine-grained reuse" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Nathanael Schärli" link: "https://researchr.org/alias/nathanael-sch%C3%A4rli" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Andrew P. Black" link: "https://researchr.org/alias/andrew-p.-black" year: "2006" doi: "http://doi.acm.org/10.1145/1119479.1119483" links: doi: "http://doi.acm.org/10.1145/1119479.1119483" tags: - "reuse" researchr: "https://researchr.org/publication/DucasseNSWB06" cites: 0 citedby: 0 journal: "TOPLAS" volume: "28" number: "2" pages: "331-388" kind: "article" key: "DucasseNSWB06" - title: "The future is dynamic: adaptive runtime resource management for heterogeneous computer platforms" author: - name: "Rogier Baert" link: "https://researchr.org/alias/rogier-baert" - name: "Carolina Blanch" link: "https://researchr.org/alias/carolina-blanch" - name: "Paul Coene" link: "https://researchr.org/alias/paul-coene" - name: "Maja D Hondt" link: "https://researchr.org/alias/maja-d-hondt" - name: "Zhe Ma" link: "https://researchr.org/alias/zhe-ma" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1639950.1639988" links: doi: "http://doi.acm.org/10.1145/1639950.1639988" researchr: "https://researchr.org/publication/BaertBCDMW09" cites: 0 citedby: 0 pages: "733-734" booktitle: "OOPSLA" kind: "inproceedings" key: "BaertBCDMW09" - title: "Ordering Broken Unit Tests for Focused Debugging" author: - name: "Markus Gälli" link: "https://researchr.org/alias/markus-g%C3%A4lli" - name: "Michele Lanza" link: "https://researchr.org/alias/michele-lanza" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2004" doi: "http://csdl.computer.org/comp/proceedings/icsm/2004/2213/00/22130114abs.htm" links: doi: "http://csdl.computer.org/comp/proceedings/icsm/2004/2213/00/22130114abs.htm" tags: - "testing" - "debugging" researchr: "https://researchr.org/publication/GalliLNW04" cites: 0 citedby: 0 pages: "114-123" booktitle: "ICSM" kind: "inproceedings" key: "GalliLNW04" - title: "Parcels: A fast and feature-rich binary deployment technology" author: - name: "Eliot Miranda" link: "https://researchr.org/alias/eliot-miranda" - name: "David Leibs" link: "https://researchr.org/alias/david-leibs" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://dx.doi.org/10.1016/j.cl.2005.02.001" links: doi: "http://dx.doi.org/10.1016/j.cl.2005.02.001" tags: - "deployment" researchr: "https://researchr.org/publication/MirandaLW05" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "31" number: "3-4" pages: "165-181" kind: "article" key: "MirandaLW05" - title: "Embedded Multiprocessor Systems-on-Chip Programming" author: - name: "Jean-Yves Mignolet" link: "https://researchr.org/alias/jean-yves-mignolet" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://dx.doi.org/10.1109/MS.2009.64" links: doi: "http://dx.doi.org/10.1109/MS.2009.64" tags: - "programming" researchr: "https://researchr.org/publication/MignoletW09" cites: 0 citedby: 0 journal: "IEEE Software" volume: "26" number: "3" pages: "34-41" kind: "article" key: "MignoletW09" - title: "Declaratively Codifying Software Architectures Using Virtual Software Classifications" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Theo D'Hondt" link: "http://soft.vub.ac.be/~tjdhondt/HTM.dir/homepage.htm" year: "1999" doi: "http://doi.ieeecomputersociety.org/10.1109/TOOLS.1999.778997" links: doi: "http://doi.ieeecomputersociety.org/10.1109/TOOLS.1999.778997" tags: - "software architecture" - "classification" - "architecture" researchr: "https://researchr.org/publication/MensWD99" cites: 0 citedby: 0 pages: "33-45" booktitle: "TOOLS" kind: "inproceedings" key: "MensWD99" - title: "Composable Encapsulation Policies" author: - name: "Nathanael Schärli" link: "https://researchr.org/alias/nathanael-sch%C3%A4rli" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2004" doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3086&spage=26" links: doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3086&spage=26" researchr: "https://researchr.org/publication/ScharliDNW04" cites: 0 citedby: 0 pages: "26-50" booktitle: "ECOOP" kind: "inproceedings" key: "ScharliDNW04" - title: "SmallWiki --- A Meta-Described Collaborative Content Management System" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Lukas Renggli" link: "http://www.lukas-renggli.ch/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "10.1145/1104973.1104981" abstract: "Wikis are often implemented using string-based approaches to parse and generate their pages. While such approaches work well for simple wikis, they hamper the customization and adaptability of wikis to the variety of end-users when more sophisticated needs are required (i.e., different output formats, user-interfaces, wiki managment, security policies, ...). In this paper we present SmallWiki, the second version of a fully object-oriented implementation of a wiki. SmallWiki is implemented with objects from the top to the bottom and it can be customized easily to accommodate new needs. In addition, SmallWiki is based on a powerful meta-description called Magritte that allows one to create user-interface elements declaratively." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca05hSmallwikiWikiSymp05.pdf" tags: - "rule-based" - "meta-model" - "wiki" - "security" - "Meta-Environment" - "parsing" - "systematic-approach" - "meta-objects" researchr: "https://researchr.org/publication/Duca05h" cites: 0 citedby: 0 booktitle: "Proceedings ACM International Symposium on Wikis (WikiSym'05)" kind: "inproceedings" key: "Duca05h" - title: "A Component Model for Field Devices" author: - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Gabriela Arévalo" link: "https://researchr.org/alias/gabriela-ar%C3%A9valo" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Andrew P. Black" link: "https://researchr.org/alias/andrew-p.-black" - name: "Peter O. Müller" link: "https://researchr.org/alias/peter-o.-m%C3%BCller" - name: "Christian Zeidler" link: "https://researchr.org/alias/christian-zeidler" - name: "Thomas Genssler" link: "https://researchr.org/alias/thomas-genssler" - name: "Reinier van den Born" link: "https://researchr.org/alias/reinier-van-den-born" year: "2002" doi: "http://link.springer.de/link/service/series/0558/bibs/2370/23700200.htm" links: doi: "http://link.springer.de/link/service/series/0558/bibs/2370/23700200.htm" tags: - "meta-model" - "Meta-Environment" researchr: "https://researchr.org/publication/NierstraszADWBMZGB02" cites: 0 citedby: 0 pages: "200-209" booktitle: "cd" kind: "inproceedings" key: "NierstraszADWBMZGB02" - title: "Challenging VMs on Battery-Powered Embedded Devices" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" links: "url": "http://roelwuyts.be/publications/Wuyt09a-ChallengingVMs.pdf" researchr: "https://researchr.org/publication/Wuyt09a" cites: 0 citedby: 0 booktitle: "3rd workshop on Virtual Machines and Intermediate Languages (VMIL)" kind: "inproceedings" key: "Wuyt09a" - title: "The Classbox Module System" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2003" month: "jul" abstract: "Classical module systems support well the modular development of applications but do not offer the ability to add or replace a method in a class that is not defined in that module. On the other hand, languages that support method addition and replacement do not provide a modular view of applications, and their changes have a global impact. The result is a gap between module systems for object-oriented languages on one hand, and the very desirable feature of method addition and replacement on the other hand. To solve these problems we present classboxes, a module system for object-oriented languages that provides method addition and replacement. Moreover, the changes made by a classbox are only visible to that classbox (or classboxes that import it), a feature we call local rebinding. To validate the model, we have implemented it in the Squeak Smalltalk environment, and performed experiments modularising code." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Berg03bClassboxes.pdf" tags: - "meta-model" - "modeling language" - "language modeling" - "model-driven development" - "object-role modeling" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/Berg03b" cites: 0 citedby: 0 booktitle: "Proceedings of the ECOOP '03 Workshop on Object-oriented Language Engineering for the Post-Java Era" kind: "inproceedings" key: "Berg03b" - title: "Composability of aspects" author: - name: "Antoine Marot" link: "https://researchr.org/alias/antoine-marot" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2008" doi: "10.1145/1408647.1408652" researchr: "https://researchr.org/publication/Maro08a" cites: 0 citedby: 0 booktitle: "SPLAT '08: Proceedings of the 2008 AOSD workshop on Software engineering properties of languages and aspect technologies" kind: "inproceedings" key: "Maro08a" - title: "Traits: A Mechanism for fine-grained Reuse" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Nathanael Schärli" link: "http://www.iam.unibe.ch/~schaerli/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Andrew Black" link: "https://researchr.org/alias/andrew-black" year: "2006" month: "mar" doi: "10.1145/1119479.1119483" abstract: "Inheritance is well-known and accepted as a mechanism for reuse in ob ject-oriented languages. Unfortunately, due to the coarse granularity of inheritance, it may be difficult to decompose an application into an optimal class hierarchy that maximizes software reuse. Existing schemes based on single inheritance, multiple inheritance, or mixins, all pose numerous problems for reuse. To overcome these problems we propose traits, pure units of reuse consisting only of methods. We develop a formal model of traits that establishes how traits can be composed, either to form other traits, or to form classes. We also outline an experimental validation in which we apply traits to refactor a non-trivial application into composable units." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca06bTOPLASTraits.pdf" tags: - "rule-based" - "meta-model" - "modeling language" - "modeling" - "language modeling" - "reuse" - "Meta-Environment" researchr: "https://researchr.org/publication/Duca06b" cites: 0 citedby: 1 journal: "ACM Transactions on Programming Languages and Systems (TOPLAS)" volume: "28" number: "2" kind: "article" key: "Duca06b" - title: "Executing code in the past: efficient in-memory object graph versioning" author: - name: "Frédéric Pluquet" link: "http://decomp.ulb.ac.be/frdricpluquet/" - name: "Stefan Langerman" link: "http://cgm.cs.mcgill.ca/~sl/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1640089.1640118" links: doi: "http://doi.acm.org/10.1145/1640089.1640118" tags: - "graph-rewriting" - "rewriting" researchr: "https://researchr.org/publication/PluquetLW09" cites: 0 citedby: 0 pages: "391-408" booktitle: "OOPSLA" kind: "inproceedings" key: "PluquetLW09" - title: "Towards a Linguistic Symbiosis of an Object-oriented and a Logic Programming Language" author: - name: "Johan Brichau" link: "https://researchr.org/alias/johan-brichau" - name: "Kris Gijbels" link: "https://researchr.org/alias/kris-gijbels" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2002" tags: - "programming languages" - "object-oriented programming" - "logic programming" - "programming" - "subject-oriented programming" - "logic" - "feature-oriented programming" researchr: "https://researchr.org/publication/Bric02a" cites: 0 citedby: 0 booktitle: "Proceedings of the Workshop on Multiparadigm Programming with Object-Oriented Languages (MPOOL 2002)" kind: "inproceedings" key: "Bric02a" - title: "Synchronising Changes to Design and Implementation using a Declarative Meta-Programming Language" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2001" month: "dec" abstract: "When developing software systems, the relation between design and implementation is typically left unspecified. As a result design or implementation can be modified independently of each other, and a modification of either one does not leave any trace in the other. The practical result of this is a number of well-known problems such as drift and erosion, documentation maintenance problems or round-trip engineering trouble. To solve these problems we propose to make the relation between des ign and implementation explicit by expressing design as a logic meta program over implementation. This is the cornerstone for building a complete synchronisation framework that allows one to synchronise changes to design and implementation. We have implem ented such synchronisation framework, and applied it successfully on two case studies." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt01f.pdf" tags: - "programming languages" - "completeness" - "meta programming" - "case study" - "model synchronisation" - "meta-model" - "language engineering" - "software language engineering" - "language design" - "maintenance" - "software engineering" - "model-driven engineering" - "logic programming" - "programming" - "logic" - "Meta-Environment" - "design" - "round trip engineering" - "meta-objects" researchr: "https://researchr.org/publication/Wuyt01f" cites: 0 citedby: 0 booktitle: "International Workshop on (Constraint) Logic Programming for Software Engineering" kind: "inproceedings" key: "Wuyt01f" - title: "Dynamic Languages and Applications" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Wolfgang De Meuter" link: "https://researchr.org/alias/wolfgang-de-meuter" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-78195-0_2" links: doi: "http://dx.doi.org/10.1007/978-3-540-78195-0_2" researchr: "https://researchr.org/publication/BergelMDNW07" cites: 0 citedby: 0 pages: "7-12" booktitle: "ECOOPW" kind: "inproceedings" key: "BergelMDNW07" - title: "Supporting Software Development through Declaratively Codified Programming" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Isabel Michiels" link: "https://researchr.org/alias/isabel-michiels" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2001" tags: - "programming" researchr: "https://researchr.org/publication/MensMW01" cites: 0 citedby: 0 pages: "236-243" booktitle: "seke" kind: "inproceedings" key: "MensMW01" - title: "The Zypher Meta Object Protocol" author: - name: "Serge Demeyer" link: "https://researchr.org/alias/serge-demeyer" - name: "Patrick Steyaert" link: "https://researchr.org/alias/patrick-steyaert" - name: "Koen De Hondt" link: "https://researchr.org/alias/koen-de-hondt" - name: "Wim Codenie" link: "https://researchr.org/alias/wim-codenie" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Theo D'Hondt" link: "http://soft.vub.ac.be/~tjdhondt/HTM.dir/homepage.htm" year: "1996" month: "apr" abstract: "This paper discusses the necessity of a meta object protocol in the design of an open hypermedia system. It shows that a meta object protocol enables to tailor the behaviour and configuration of the hypermedia system, independent of its constituting elements. The approach is demonstrated by means of the Zypher Open Hypermedia Framework, where the meta object protocol eases the incorporation of system services (i.e. caching, logging, authority control and integrity control) and flexible reconfiguration (i.e. run-time extensibility and cross-platform portability)." links: "url": "http://www.iam.unibe.ch/~demeyer/Deme96m/http://www.iam.unibe.ch/~demeyer/Deme96m/psstmnt.htmlhttp://www.daimi.aau.dk/~kock/OHS-HT96/http://progwww.vub.ac.be/papers/paperquery.html" tags: - "control systems" - "meta-object protocol" - "caching" - "meta-model" - "protocol" - "source-to-source" - "Meta-Environment" - "Zypher" - "design" - "systematic-approach" - "open-source" - "meta-objects" researchr: "https://researchr.org/publication/Deme96m" cites: 0 citedby: 0 booktitle: "Proceedings of the 2nd Workshop on Open Hypermedia Systems --- Hypertext '96" kind: "inproceedings" key: "Deme96m" - title: "Uniform and safe metaclass composition" author: - name: "Stéphane Ducasse" link: "https://researchr.org/alias/st%C3%A9phane-ducasse" - name: "Nathanael Schärli" link: "https://researchr.org/alias/nathanael-sch%C3%A4rli" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://dx.doi.org/10.1016/j.cl.2004.11.003" links: doi: "http://dx.doi.org/10.1016/j.cl.2004.11.003" tags: - "composition" - "safe composition" researchr: "https://researchr.org/publication/DucasseSW05" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "31" number: "3-4" pages: "143-164" kind: "article" key: "DucasseSW05" - title: "The Intensional View Environment" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Andy Kellens" link: "http://soft.vub.ac.be/~akellens/" - name: "Frédéric Pluquet" link: "https://researchr.org/alias/fr%C3%A9d%C3%A9ric-pluquet" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/MensKPW05" cites: 0 citedby: 0 pages: "81-84" booktitle: "ICSM" kind: "inproceedings" key: "MensKPW05" - title: "Proceedings of the Dynamic Languages Symposium 2005" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" researchr: "https://researchr.org/publication/Wuyt05b" cites: 0 citedby: 0 publisher: "ACM Digital Library" isbn: "1-59593-283-6" kind: "book" key: "Wuyt05b" - title: "A Logic Meta-Programming Approach to Support the Co-Evolution of Object-Oriented Design and Implementation" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2001" links: "url": "http://www.iam.unibe.ch/~scg/Archive/PhD/Wuyts-phd.pdf" tags: - "object-oriented programming" - "meta programming" - "meta-model" - "logic programming" - "programming" - "subject-oriented programming" - "logic" - "Meta-Environment" - "design" - "systematic-approach" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/Wuyt01b" cites: 0 citedby: 0 school: "Vrije Universiteit Brussel" kind: "phdthesis" key: "Wuyt01b" - title: "Composition Languages for Black-Box Components" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" year: "2001" abstract: "Supporting reuse of existing pieces of code is one of the main goals of software engineering. In the name of reuse, module-based programming languages came to be, only to be surpassed by object-oriented technology. With the same motivation component-based solutions are overtaking object-oriented solutions. However, the delegation-only focus of component-based programming risks of resulting in the same problems that modular-based approaches ran into. To counter this, we claim that one of th e important problems that should be addressed by component languages is the composition of components. More specifically, we see component languages where components are black-box abstractions, and with (one or more) composition languages to glue them tog ether. As an example we show a functional (Piccola) and a logic (QSoul) composition approach." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt01c.pdf" tags: - "programming languages" - "object-oriented programming" - "reusable components" - "rule-based" - "meta programming" - "software components" - "language engineering" - "software language engineering" - "composition" - "functional programming" - "software component" - "reuse" - "software engineering" - "logic programming" - "e-science" - "programming" - "subject-oriented programming" - "logic" - "abstraction" - "Meta-Environment" - "systematic-approach" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/Wuyt01c" cites: 0 citedby: 0 booktitle: "First OOPSLA Workshop on Language Mechanisms for Programming Software Components" kind: "inproceedings" key: "Wuyt01c" - title: "Class-management using Logical Queries, Application of a Reflective User Interface Builder" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1996" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt96a.pdf" researchr: "https://researchr.org/publication/Wuyt96a" cites: 0 citedby: 0 booktitle: "Proceedings of GRONICS '96" kind: "inproceedings" key: "Wuyt96a" - title: "Open Surfaces for Controlled Visibility" author: - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Nathanael Sch{\\\"a}rli" link: "https://researchr.org/alias/nathanael-sch%7B%5Eb%22a%7Drli" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2003" month: "jul" abstract: "Current languages contain visibility mechanisms such as private, protected, or public to control who can see what. However, these visibility mechanisms are fixed once for all. Moreover, they do not solve all problems related to the visibility, and are typically of a static nature. In this position paper we present an open and uniform way of dealing with visibility and introduce surfaces: i.e., list of methods that control the way the behavior of an ob ject is accessible. We introduce two problems that other visibility mechanisms cannot solve, and show how surfaces can." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca03bSurfaces.pdf" tags: - "source-to-source" - "open-source" researchr: "https://researchr.org/publication/Duca03b" cites: 0 citedby: 0 booktitle: "Proceedings of the ECOOP '03 Workshop on Object-oriented Language Engineering for the Post-Java Era" kind: "inproceedings" key: "Duca03b" - title: "Stateful Traits" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" doi: "http://dx.doi.org/10.1007/978-3-540-71836-9_4" links: doi: "http://dx.doi.org/10.1007/978-3-540-71836-9_4" researchr: "https://researchr.org/publication/BergelDNW06" cites: 0 citedby: 0 pages: "66-90" booktitle: "smalltalk" kind: "inproceedings" key: "BergelDNW06" - title: "Report of the {ECOOP}'04 Workshop on Object-Oriented Reengineering" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Serge Demeyer" link: "https://researchr.org/alias/serge-demeyer" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" year: "2004" doi: "10.1007/b104146" abstract: "This paper reports on the results of the Fifth International Workshop on Object-Oriented Reengineering in Oslo on June 15, 2004. It enumerates the presentations made, classifies the contributions and lists the main results of the discussions held at the workshop. As such it provides the context for future workshops around this topic." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt04x-OOR04Report.pdf" tags: - "meta-model" - "context-aware" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/Wuyt04x" cites: 0 citedby: 0 booktitle: "Object-Oriented Technology. ECOOP'04 Workshop Reader" kind: "inproceedings" key: "Wuyt04x" - title: "Editorial: Smalltalk Language" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2004" doi: "http://dx.doi.org/10.1016/j.cl.2003.08.001" links: doi: "http://dx.doi.org/10.1016/j.cl.2003.08.001" researchr: "https://researchr.org/publication/DucasseW04" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "30" number: "1-2" pages: "1-3" kind: "article" key: "DucasseW04" - title: "Co-evolution of Object-Oriented Software Design and Implementation" author: - name: "Theo D'Hondt" link: "http://soft.vub.ac.be/~tjdhondt/HTM.dir/homepage.htm" - name: "De Volder, Kris" link: "https://researchr.org/alias/de-volder%2C-kris" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2000" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/DHon00a.pdf" tags: - "meta-model" - "software evolution" - "Meta-Environment" - "design" - "meta-objects" researchr: "https://researchr.org/publication/DHon00a" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Software Architectures and Component Technology 2000." kind: "inproceedings" key: "DHon00a" - title: "Workshop Report - ECOOP 98 Workshop 7: Tools and Environments for Business Rules" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Dirk Bontridder" link: "https://researchr.org/alias/dirk-bontridder" - name: "Alain Grijseels" link: "https://researchr.org/alias/alain-grijseels" year: "1998" doi: "http://link.springer.de/link/service/series/0558/bibs/1543/15430189.htm" links: doi: "http://link.springer.de/link/service/series/0558/bibs/1543/15430189.htm" tags: - "rule-based" - "business rules" - "rules" - "Meta-Environment" researchr: "https://researchr.org/publication/MensWBG98" cites: 0 citedby: 0 pages: "189-196" booktitle: "ECOOPW" kind: "inproceedings" key: "MensWBG98" - title: "Using Reflective Logic Programming to Describe Domain Knowledge as an Aspect" author: - name: "Maja D Hondt" link: "https://researchr.org/alias/maja-d-hondt" - name: "Wolfgang De Meuter" link: "https://researchr.org/alias/wolfgang-de-meuter" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1999" doi: "http://link.springer.de/link/service/series/0558/bibs/1799/17990016.htm" links: doi: "http://link.springer.de/link/service/series/0558/bibs/1799/17990016.htm" tags: - "logic programming" - "programming" - "logic" researchr: "https://researchr.org/publication/DHondtMW99" cites: 0 citedby: 0 pages: "16-23" booktitle: "gcse" kind: "inproceedings" key: "DHondtMW99" - title: "Non-Functional Requirements in a Component Model for Embedded Systems" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" year: "2001" abstract: "In this paper we describe an interesting context to study formal methods for component systems: embedded devices. The context of embedded devices is highly constrained by the physical requirements the devices have to adhere to. As a result, component models for embedded devices are not general purpose but geared towards these constrained contexts. In this paper we give the concrete setting of the Pecos project (a project with as goal component engineering for embedded devices). We describe the Pecos component model, and show possibilities where we think formal verification could be useful. We would like to use this as a very concrete example to discuss formal verification techniques." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Wuyt01e.pdf" tags: - "meta-model" - "modeling" - "requirements engineering" - "model-driven engineering" - "context-aware" - "Meta-Environment" researchr: "https://researchr.org/publication/Wuyt01e" cites: 0 citedby: 0 booktitle: "International Workshop on Specification and Verification of Component-Based Systems" kind: "inproceedings" key: "Wuyt01e" - title: "Tool Building on the Shoulders of Others" author: - name: "Holger M. Kienle" link: "https://researchr.org/alias/holger-m.-kienle" - name: "Adrian Kuhn" link: "http://scg.unibe.ch/akuhn" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://dx.doi.org/10.1109/MS.2009.25" links: doi: "http://dx.doi.org/10.1109/MS.2009.25" researchr: "https://researchr.org/publication/KienleKMBW09" cites: 0 citedby: 0 journal: "IEEE Software" volume: "26" number: "1" pages: "22-23" kind: "article" key: "KienleKMBW09" - title: "Redesigning with traits: the Nile stream trait-based library" author: - name: "Damien Cassou" link: "https://researchr.org/alias/damien-cassou" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2007" doi: "http://doi.acm.org/10.1145/1352678.1352682" links: doi: "http://doi.acm.org/10.1145/1352678.1352682" tags: - "rule-based" researchr: "https://researchr.org/publication/CassouDW07" cites: 0 citedby: 0 pages: "50-75" booktitle: "smalltalk" kind: "inproceedings" key: "CassouDW07" - title: "Declarative Meta Programming to Support Software Development: Workshop Report" author: - name: "Tom Mens" link: "http://staff.umh.ac.be/Mens.Tom/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Kris De Volder" link: "https://researchr.org/alias/kris-de-volder" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" year: "2003" doi: "http://doi.acm.org/10.1145/638750.638770" links: doi: "http://doi.acm.org/10.1145/638750.638770" tags: - "meta programming" - "meta-model" - "model-driven development" - "programming" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/MensWVM03" cites: 0 citedby: 0 journal: "sigsoft" volume: "28" number: "2" pages: "1" kind: "article" key: "MensWVM03" - title: "On the Revival of Dynamic Languages" author: - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Marcus Denker" link: "https://researchr.org/alias/marcus-denker" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Markus Gälli" link: "https://researchr.org/alias/markus-g%C3%A4lli" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://dx.doi.org/10.1007/11550679_1" links: doi: "http://dx.doi.org/10.1007/11550679_1" researchr: "https://researchr.org/publication/NierstraszBDDGW05" cites: 0 citedby: 0 pages: "1-13" booktitle: "SC" kind: "inproceedings" key: "NierstraszBDDGW05" - title: "ECOOP '98 Workshop Report: Tools and Environments for Business Rules" author: - name: "Kim Mens" link: "https://researchr.org/alias/kim-mens" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Dirk Bontridder" link: "https://researchr.org/alias/dirk-bontridder" - name: "Alain Grijseels" link: "https://researchr.org/alias/alain-grijseels" year: "1998" abstract: "This workshop focussed on the requirements for tools and environments that support business rules in an object-oriented setting and attempted to provide an overview of possible techniques and tools for the handling, definition and checking of these rules and the constraints expressed by them during analysis, design and development of object-oriented software." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/MensAl98.pdf" tags: - "rule-based" - "business rules" - "analysis" - "constraints" - "rules" - "Meta-Environment" - "design" - "meta-objects" researchr: "https://researchr.org/publication/Mens98a" cites: 0 citedby: 0 booktitle: "ECOOP '98 Workshop Reader" kind: "inproceedings" key: "Mens98a" - title: "Composing Embedded Real-Time Software Components: the PECOS Data-Centric Approach" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2003" month: "jan" abstract: "Although component-based software development (CBSD) has become mainstream for conventional applications, it has remained elusive for embedded applications due to non-functional constraints. The PECOS project has demonstrated that CBSD can also be applied to severely constrained embedded devices, with timing and memory requirements being taken into account." links: "url": "http://www.ercim.org/publication/Ercim_News/enw52/nierstrasz.html" tags: - "rule-based" - "software components" - "embedded software" - "software component" - "constraints" - "data-flow" - "systematic-approach" researchr: "https://researchr.org/publication/Duca03a" cites: 0 citedby: 0 journal: "ERCIM News" volume: "52" kind: "article" key: "Duca03a" - title: "Traits at Work: the design of a new trait-based stream library" author: - name: "Damien Cassou" link: "https://researchr.org/alias/damien-cassou" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "10.1016/j.cl.2008.05.004" abstract: "Recent years saw the development of a composition mechanism called Traits. Traits are pure units of behavior that can be composed to form classes or other traits. The trait composition mechanism is an alternative to multiple or mixin inheritance in which the composer has full control over the trait composition. To evaluate the expressiveness of traits, some hierarchies were refactored, showing code reuse. However, such large refactorings, while valuable, may not exhibit all possible composition problems, since the hierarchies were previously expressed using single inheritance and following certain patterns. This paper presents our work on designing and implementing a new trait-based stream library named Nile. It evaluates how far traits enable reuse, what problems can be encountered when building a library using traits from scratch and compares the traits solution to alternative composition mechanisms. Nile's core allows the definition of compact collection and file streaming libraries as well as the implementation of a backward-compatible new stream library. Nile method size shows a reduction of 40% compared to the Squeak equivalent. The possibility to reuse the same set of traits to implement two distinct libraries is a concrete illustration of trait reuse capability." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Cass08a-NileNewKernel-ComputerLanguages.pdf" tags: - "rule-based" - "refactoring" - "composition" - "reuse" - "rule-based refactoring" - "design" researchr: "https://researchr.org/publication/Cass09a" cites: 0 citedby: 0 journal: "Journal of Computer Languages, Systems and Structures" volume: "35" number: "1" kind: "article" key: "Cass09a" - title: "Logic Meta Components as a Generic Component Model" author: - name: "De Volder, Kris" link: "https://researchr.org/alias/de-volder%2C-kris" - name: "Fabry, Johan" link: "https://researchr.org/alias/fabry%2C-johan" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2000" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/DeVo00a.pdf" tags: - "meta-model" - "logic" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/DeVo00a" cites: 0 citedby: 0 booktitle: "Proceedings of the ECOOP 2000: Fifth International Workshop on Component-Oriented Programming" kind: "inproceedings" key: "DeVo00a" - title: "The future is dynamic: adaptive runtime resource management for heterogeneous computer platforms" author: - name: "Rogier Baert" link: "https://researchr.org/alias/rogier-baert" - name: "Carolina Blanch" link: "https://researchr.org/alias/carolina-blanch" - name: "Paul Coene" link: "https://researchr.org/alias/paul-coene" - name: "Maja D Hondt" link: "https://researchr.org/alias/maja-d-hondt" - name: "Zhe Ma" link: "https://researchr.org/alias/zhe-ma" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1639950.1640015" links: doi: "http://doi.acm.org/10.1145/1639950.1640015" researchr: "https://researchr.org/publication/BaertBCDMW09a" cites: 0 citedby: 0 pages: "787-788" booktitle: "OOPSLA" kind: "inproceedings" key: "BaertBCDMW09a" - title: "On the Use of Declarative Meta Programming for Managing Architectural Software Evolution" author: - name: "Tom Mens" link: "http://staff.umh.ac.be/Mens.Tom/" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2000" month: "jun" links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/DHon99a.pdf" tags: - "meta programming" - "software architecture" - "meta-model" - "architecture" - "software evolution" - "programming" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/Mens00a" cites: 0 citedby: 0 booktitle: "Proceedings of the ECOOP 2000 Workshop on Object-Oriented Architectural Evolution" kind: "inproceedings" key: "Mens00a" - title: "Applying RMA for Scheduling Field Device Components" author: - name: "Peng Liang" link: "https://researchr.org/alias/peng-liang" - name: "Gabriela Ar{\\'e}valo" link: "https://researchr.org/alias/gabriela-ar%7B%5Eb%27e%7Dvalo" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Michele Lanza" link: "https://researchr.org/alias/michele-lanza" - name: "Nathanael Sch{\\\"a}rli" link: "https://researchr.org/alias/nathanael-sch%7B%5Eb%22a%7Drli" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" year: "2002" abstract: "PECOS is a collaborative project between industrial and research partners that seeks to enable component-based technology for a class of embedded systems known as \"field devices\". Results so far include a component model for field devices and a composition language for specifying connections between software components. Here we investigate the application of Rate Monotonic Analysis (RMA) to the problem of generating real-time schedules for compositions of field device components." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Lian02aPecosRMA.pdf" tags: - "rule-based" - "software components" - "meta-model" - "modeling language" - "embedded software" - "modeling" - "language modeling" - "composition" - "software component" - "analysis" - "Meta-Environment" researchr: "https://researchr.org/publication/Lian02a" cites: 0 citedby: 0 booktitle: "ECOOP 2002 Workshop Reader" kind: "inproceedings" key: "Lian02a" - title: "Understanding Object-Oriented Programs with Declarative Event Analysis" author: - name: "Tamar Richner" link: "https://researchr.org/alias/tamar-richner" - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1998" month: "jul" abstract: "Understanding how components in an application interact to ensure a certain functionality is an essential aspect of understanding a software application. To obtain this kind of information an analysis of the dynamic behavior of an application is more appropriate than a static analysis of the code. Understanding dynamic behavior through event analysis is a challenge because of the large amount of data gathered through program executions. In this paper, we show how we define declarative queries that allow us to filter the event data collected and to define new abstractions which aid in program understanding." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Rich98bEvents.pdf" tags: - "object-oriented programming" - "program analysis" - "meta programming" - "software components" - "functional programming" - "software component" - "analysis" - "static analysis" - "data-flow programming" - "data-flow" - "aspect oriented programming" - "programming" - "subject-oriented programming" - "abstraction" - "Meta-Environment" - "data-flow analysis" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/Rich98b" cites: 0 citedby: 0 booktitle: "Object-Oriented Technology (ECOOP '98 Workshop Reader)" kind: "inproceedings" key: "Rich98b" - title: "Inter-language reflection: A conceptual model and its implementation" author: - name: "Kris Gybels" link: "https://researchr.org/alias/kris-gybels" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Maja D'Hondt" link: "http://ssel.vub.ac.be/ssel/about/members/majadhondt" year: "2006" doi: "http://dx.doi.org/10.1016/j.cl.2005.10.003" abstract: "Meta programming is the act of reasoning about a computational system. For example, a program in Prolog can reason about a program written in Smalltalk. Reflection is a more powerful form of meta programming where the same language is used to reason about, and act upon, itself in a causally connected way. Thus on the one hand we have meta programming that allows different languages or paradigms to be used, but without causal connection, while on the other hand we have reflection that offers causal connection but only for a single language. This paper combines both and presents inter-language reflection that allows one language to reason about and change in a causally connected way another language and vice versa. The fundamental aspects of inter-language reflection and the language symbiosis used therein, are discussed. Moreover the implementation of two symbiotic reflective languages is discussed: Agora/Java and SOUL/Smalltalk." links: doi: "http://dx.doi.org/10.1016/j.cl.2005.10.003" tags: - "programming languages" - "Prolog" - "Java" - "meta programming" - "meta-model" - "modeling language" - "computational reflection" - "language modeling" - "programming paradigms" - "programming" - "Meta-Environment" - "reflection" - "meta-objects" researchr: "https://researchr.org/publication/GybelsWDD06" cites: 0 citedby: 1 journal: "Comp. Lang., Syst. \\& Struct." volume: "32" number: "2-3" pages: "109-124" kind: "article" key: "GybelsWDD06" - title: "Meta-driven Browsers" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "https://researchr.org/alias/st%C3%A9phane-ducasse" - name: "Colin Putney" link: "https://researchr.org/alias/colin-putney" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" doi: "http://dx.doi.org/10.1007/978-3-540-71836-9_7" links: doi: "http://dx.doi.org/10.1007/978-3-540-71836-9_7" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/BergelDPW06" cites: 0 citedby: 0 pages: "134-156" booktitle: "smalltalk" kind: "inproceedings" key: "BergelDPW06" - title: "Classboxes: A Minimal Module Model Supporting Local Rebinding" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2003" doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=2789&spage=122" links: doi: "http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=2789&spage=122" researchr: "https://researchr.org/publication/BergelDW03" cites: 0 citedby: 1 pages: "122-131" booktitle: "jmlc" kind: "inproceedings" key: "BergelDW03" - title: "A Comparative Framework for Design Recovery Tools" author: - name: "Yann-Gaël Guéhéneuc" link: "https://researchr.org/alias/yann-ga%C3%ABl-gu%C3%A9h%C3%A9neuc" - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" doi: "http://doi.ieeecomputersociety.org/10.1109/CSMR.2006.1" links: doi: "http://doi.ieeecomputersociety.org/10.1109/CSMR.2006.1" tags: - "design" researchr: "https://researchr.org/publication/GueheneucMW06" cites: 0 citedby: 0 pages: "123-134" booktitle: "CSMR" kind: "inproceedings" key: "GueheneucMW06" - title: "Components for embedded software: the PECOS approach" author: - name: "Thomas Genssler" link: "https://researchr.org/alias/thomas-genssler" - name: "Alexander Christoph" link: "https://researchr.org/alias/alexander-christoph" - name: "Michael Winter" link: "https://researchr.org/alias/michael-winter" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Gabriela Arévalo" link: "https://researchr.org/alias/gabriela-ar%C3%A9valo" - name: "Bastiaan Schönhage" link: "https://researchr.org/alias/bastiaan-sch%C3%B6nhage" - name: "Peter O. Müller" link: "https://researchr.org/alias/peter-o.-m%C3%BCller" - name: "Christian Stich" link: "https://researchr.org/alias/christian-stich" year: "2002" doi: "http://doi.acm.org/10.1145/581630.581634" links: doi: "http://doi.acm.org/10.1145/581630.581634" tags: - "software components" - "embedded software" - "software component" - "systematic-approach" researchr: "https://researchr.org/publication/GensslerCWNDWASMS02" cites: 0 citedby: 0 pages: "19-26" booktitle: "cases" kind: "inproceedings" key: "GensslerCWNDWASMS02" - title: "User-changeable visibility: resolving unanticipated name clashes in traits" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" year: "2007" doi: "http://doi.acm.org/10.1145/1297027.1297040" links: doi: "http://doi.acm.org/10.1145/1297027.1297040" researchr: "https://researchr.org/publication/DucasseWBN07" cites: 0 citedby: 0 pages: "171-190" booktitle: "OOPSLA" kind: "inproceedings" key: "DucasseWBN07" - title: "Declarative Reasoning about the Structure of Object-Oriented Systems" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "1998" doi: "http://doi.ieeecomputersociety.org/10.1109/TOOLS.1998.711007" links: doi: "http://doi.ieeecomputersociety.org/10.1109/TOOLS.1998.711007" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/Wuyts98" cites: 0 citedby: 0 pages: "112-124" booktitle: "TOOLS" kind: "inproceedings" key: "Wuyts98" - title: "Classboxes: controlling visibility of class extensions" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://dx.doi.org/10.1016/j.cl.2004.11.002" abstract: "A class extension is a method that is defined in a module, but whose class is defined elsewhere. Class extensions offer a convenient way to incrementally modify existing classes when subclassing is inappropriate. Unfortunately existing approaches suffer from various limitations. Either class extensions have a global impact, with possibly negative effects for unexpected clients, or they have a purely local impact, with negative results for collaborating clients. Furthermore, conflicting lass extensions are either disallowed, or resolved by linearization, with consequent negative effects. To solve these problems we present classboxes, a module system for object-oriented nguages that provides for method addition and replacement. Moreover, the changes made by a classbox are only visible to that classbox (or classboxes that import it), a feature we call local ebinding. To validate the model we have implemented it in the Squeak Smalltalk environment, and performed benchmarks." links: doi: "http://dx.doi.org/10.1016/j.cl.2004.11.002" tags: - "control systems" - "meta-model" - "object-role modeling" - "Meta-Environment" - "incremental" - "systematic-approach" - "meta-objects" researchr: "https://researchr.org/publication/BergelDNW05" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "31" number: "3-4" pages: "107-126" kind: "article" key: "BergelDNW05" - title: "Uniform and Safe Metaclass Composition" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Nathanael Schärli" link: "http://www.iam.unibe.ch/~schaerli/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" month: "dec" doi: "10.1016/j.cl.2004.11.003" abstract: "In pure object-oriented languages, classes are objects, instances of other classes called metaclasses. In the same way as classes define the properties of their instances, metaclasses define the properties of classes. It is therefore very natural to wish to reuse class properties, utilizing them amongst several classes. However this introduced metaclass composition problems, i.e., code fragments applied to one class may break when used on another class due to the inheritance relationship between their respective metaclasses. Numerous approaches have tried to solve metaclass composition problems, but they always resort to an ad-hoc manner of handling conflicting properties, alienating the meta-programmer. We propose a uniform approach that represents class properties as traits, groups of methods that act as a unit of reuse from which classes are composed. Like all the other classes in the system, metaclasses are composed out of traits. This solution supports the reuse of class properties, and their safe and automatic composition based on explicit conflict resolution. The paper discusses traits and our solution, shows concrete examples implemented in the Smalltalk environment Squeak, and compares our approach with existing models for composing class properties." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca05ySafeMetaclassTrait.pdf" tags: - "rule-based" - "meta-model" - "modeling language" - "language modeling" - "composition" - "reuse" - "object-role modeling" - "Meta-Environment" - "safe composition" - "systematic-approach" - "meta-objects" researchr: "https://researchr.org/publication/Duca05g" cites: 0 citedby: 0 journal: "Journal of Computer Languages, Systems and Structures" volume: "31" number: "3-4" kind: "article" key: "Duca05g" - title: "Co-evolving code and design with intensional views: A case study" author: - name: "Kim Mens" link: "http://www.info.ucl.ac.be/~km/MyResearchPages/research/" - name: "Andy Kellens" link: "http://soft.vub.ac.be/~akellens/" - name: "Frédéric Pluquet" link: "https://researchr.org/alias/fr%C3%A9d%C3%A9ric-pluquet" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" doi: "http://dx.doi.org/10.1016/j.cl.2005.09.002" links: doi: "http://dx.doi.org/10.1016/j.cl.2005.09.002" tags: - "case study" - "design" researchr: "https://researchr.org/publication/MensKPW06" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "32" number: "2-3" pages: "140-156" kind: "article" key: "MensKPW06" - title: "Object-Oriented Legacy System Trace-based Logic Testing" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Tudor Gîrba" link: "https://researchr.org/alias/tudor-g%C3%AErba" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2006" doi: "http://doi.ieeecomputersociety.org/10.1109/CSMR.2006.37" links: doi: "http://doi.ieeecomputersociety.org/10.1109/CSMR.2006.37" tags: - "rule-based" - "testing" - "logic" researchr: "https://researchr.org/publication/DucasseGW06" cites: 0 citedby: 0 pages: "37-46" booktitle: "CSMR" kind: "inproceedings" key: "DucasseGW06" - title: "Object-Oriented Reengineering" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Serge Demeyer" link: "https://researchr.org/alias/serge-demeyer" - name: "Yann-Gaël Guéhéneuc" link: "https://researchr.org/alias/yann-ga%C3%ABl-gu%C3%A9h%C3%A9neuc" - name: "Kim Mens" link: "https://researchr.org/alias/kim-mens" - name: "Stéphane Ducasse" link: "https://researchr.org/alias/st%C3%A9phane-ducasse" year: "2006" doi: "http://dx.doi.org/10.1007/978-3-540-71774-4_8" links: doi: "http://dx.doi.org/10.1007/978-3-540-71774-4_8" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/WuytsDGMD06" cites: 0 citedby: 0 pages: "69-71" booktitle: "ECOOPW" kind: "inproceedings" key: "WuytsDGMD06" - title: "Supporting Objects as An Anthropomorphic View at Computation or Why Smalltalk for Teaching Objects?" author: - name: "St\\'ephane Ducasse" link: "https://researchr.org/alias/st%5Eb%27ephane-ducasse" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2002" abstract: "In this paper we stress the fact that a language and an environment for teaching object-oriented programming should support the anthropomorphic metaphor promoted by the paradigm. We show that all the cultural aspects of Smalltalk, i.e., the vocabulary and the syntax support the object metaphor. In addition, we stress that the programming environment should also support the metaphor. We show that Smalltalk environments offer an important property we named liveness or object proximity that promotes the anthropomorphic perception of objects. By providing excerpt from our forth coming book, we show how Squeak with the Morphic framework reinforces this ability to make object into living entities." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca02aTeacherWorkshop.pdf" tags: - "programming languages" - "object-oriented programming" - "meta programming" - "programming paradigms" - "aspect oriented programming" - "teaching" - "programming" - "subject-oriented programming" - "Meta-Environment" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/Duca02a" cites: 0 citedby: 0 booktitle: "Proceedings of the Ecoop'02 International Educator Symposium" kind: "inproceedings" key: "Duca02a" - title: "Logic and Trace-based Object-Oriented Application Testing" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Michael Freidig" link: "https://researchr.org/alias/michael-freidig" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2004" abstract: "Due to the size and the extreme complexity of legacy systems, it is nearly impossible to write from scratch tests before refactoring them. In addition object-oriented legacy systems present specific requirements to test them. Indeed late-binding allow subclasses to change fundamental aspects of the superclass code and in particular call flows. Moreover Object-oriented programming promotes a distribution of the responsibilities to multiple entities leading to complex scenario to be tested. In such a context one of the few trustable source of information is the execution of the application itself. Traditional forward engineering approaches such as unit testing do not really provide adequate solution to this problem. Therefore there is a need for a more expressive way of testing the execution of object-oriented applications. We propose to represent the trace of object-oriented applications as logic facts and express tests over the trace. This way complex sequences of message exchanges, sequence matching, or expression of negative information are expressed in compact form. We validated our approach by implementing TestLog a prototype tool and testing the Moose reengineering environment and a meta-interpreter." links: "url": "http://www.iam.unibe.ch/~scg/Archive/Papers/Duca04bTestLogicWoor04.pdf" tags: - "data validation" - "object-oriented programming" - "rule-based" - "meta programming" - "meta-model" - "interpreter" - "model refactoring" - "refactoring" - "testing" - "extreme programming" - "requirements engineering" - "data-flow programming" - "data-flow" - "source-to-source" - "model-driven engineering" - "logic programming" - "aspect oriented programming" - "rule-based refactoring" - "programming" - "subject-oriented programming" - "context-aware" - "logic" - "Meta-Environment" - "systematic-approach" - "feature-oriented programming" - "open-source" - "meta-objects" researchr: "https://researchr.org/publication/Duca04b" cites: 0 citedby: 0 booktitle: "Fifth International Workshop on Object-Oriented Reengineering (WOOR 2004)" kind: "inproceedings" key: "Duca04b" - title: "SmallWiki: a meta-described collaborative content management system" author: - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Lukas Renggli" link: "http://www.lukas-renggli.ch/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2005" doi: "http://doi.acm.org/10.1145/1104981" abstract: "Wikis are often implemented using string-based approaches to parse and generate their pages. While such approaches work well for simple wikis, they hamper the customization and adaptability of wikis to the variety of end-users when more sophisticated needs are required (i.e., different output formats, user-interfaces, wiki managment, security policies, ...). In this paper we present SmallWiki, the second version of a fully object-oriented implementation of a wiki. SmallWiki is implemented with objects from the top to the bottom and it can be customized easily to accommodate new needs. In addition, SmallWiki is based on a powerful meta-description called Magritte that allows one to create user-interface elements declaratively." links: doi: "http://doi.acm.org/10.1145/1104981" tags: - "rule-based" - "meta-model" - "wiki" - "security" - "Meta-Environment" - "parsing" - "systematic-approach" - "meta-objects" researchr: "https://researchr.org/publication/DucasseRW05" cites: 0 citedby: 0 pages: "75-82" booktitle: "wikis" kind: "inproceedings" key: "DucasseRW05" - title: "Implementation of Fuzzy Cognitive Maps based on Fuzzy Neural Network and Application in Prediction of Time Series" author: - name: "Hengjie Song" link: "https://researchr.org/alias/hengjie-song" - name: "Chunyan Miao" link: "https://researchr.org/alias/chunyan-miao" - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Zhiqi Shen" link: "https://researchr.org/alias/zhiqi-shen" - name: "Francky Catthoor" link: "https://researchr.org/alias/francky-catthoor" year: "2010" month: "apr" tags: - "rule-based" researchr: "https://researchr.org/publication/Song10a" cites: 0 citedby: 0 journal: "IEEE Transactions on Fuzzy Systems" volume: "18" number: "2" kind: "article" key: "Song10a" - title: "Executing Code in the Past: Efficient In-Memory Object Graph Versioning" author: - name: "Frédéric Pluquet" link: "http://decomp.ulb.ac.be/frdricpluquet/" - name: "Stefan Langerman" link: "http://cgm.cs.mcgill.ca/~sl/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1639949.1640118" links: doi: "http://doi.acm.org/10.1145/1639949.1640118" "url": "http://roelwuyts.be/publications/Pluq09a-Histoory.pdf" tags: - "graph-rewriting" - "rewriting" researchr: "https://researchr.org/publication/Pluq09a-0" cites: 0 citedby: 0 booktitle: "Proceedings of 24th International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'09)" kind: "inproceedings" key: "Pluq09a-0" - title: "A data-centric approach to composing embedded, real-time software components" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Oscar Nierstrasz" link: "http://scg.unibe.ch/staff/oscar" year: "2005" doi: "http://dx.doi.org/10.1016/j.jss.2003.05.004" links: doi: "http://dx.doi.org/10.1016/j.jss.2003.05.004" tags: - "software components" - "embedded software" - "software component" - "data-flow" - "systematic-approach" researchr: "https://researchr.org/publication/WuytsDN05" cites: 0 citedby: 0 journal: "jss" volume: "74" number: "1" pages: "25-34" kind: "article" key: "WuytsDN05" - title: "Unanticipated integration of development tools using the classification model" author: - name: "Roel Wuyts" link: "http://roelwuyts.be" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" year: "2004" doi: "http://dx.doi.org/10.1016/j.cl.2003.08.003" links: doi: "http://dx.doi.org/10.1016/j.cl.2003.08.003" tags: - "classification" - "meta-model" - "model-driven development" - "Meta-Environment" researchr: "https://researchr.org/publication/WuytsD04" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "30" number: "1-2" pages: "63-77" kind: "article" key: "WuytsD04" - title: "Creating sophisticated development tools with OmniBrowser" author: - name: "Alexandre Bergel" link: "https://researchr.org/alias/alexandre-bergel" - name: "Stéphane Ducasse" link: "http://stephane.ducasse.free.fr/" - name: "Colin Putney" link: "https://researchr.org/alias/colin-putney" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2008" doi: "http://dx.doi.org/10.1016/j.cl.2007.05.005" links: doi: "http://dx.doi.org/10.1016/j.cl.2007.05.005" researchr: "https://researchr.org/publication/BergelDPW08" cites: 0 citedby: 0 journal: "Comp. Lang., Syst. \\& Struct." volume: "34" number: "2-3" pages: "109-129" kind: "article" key: "BergelDPW08" - title: "Executing code in the past: efficient in-memory object graph versioning" author: - name: "Frédéric Pluquet" link: "http://decomp.ulb.ac.be/frdricpluquet/" - name: "Stefan Langerman" link: "http://cgm.cs.mcgill.ca/~sl/" - name: "Roel Wuyts" link: "http://roelwuyts.be" year: "2009" doi: "http://doi.acm.org/10.1145/1639950.1640007" links: doi: "http://doi.acm.org/10.1145/1639950.1640007" tags: - "graph-rewriting" - "rewriting" researchr: "https://researchr.org/publication/PluquetLW09a" cites: 0 citedby: 0 pages: "771-772" booktitle: "OOPSLA" kind: "inproceedings" key: "PluquetLW09a" - title: "Proceedings of the 2005 Symposium on Dynamic Languages, DLS 2005, October 18, 2007, San Diego, California, USA" year: "2005" researchr: "https://researchr.org/publication/dls-2005" cites: 0 citedby: 0 booktitle: "Proceedings of the 2005 Symposium on Dynamic Languages, DLS 2005, October 18, 2007, San Diego, California, USA" conference: "DLS" editor: - name: "Roel Wuyts" link: "http://roelwuyts.be" publisher: "ACM" kind: "proceedings" key: "dls-2005"