publications: - title: "Aspect-oriented programming with type classes" author: - name: "Martin Sulzmann" link: "https://researchr.org/alias/martin-sulzmann" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" year: "2007" doi: "http://doi.acm.org/10.1145/1233833.1233842" links: doi: "http://doi.acm.org/10.1145/1233833.1233842" tags: - "object-oriented programming" - "aspect oriented programming" - "programming" - "subject-oriented programming" - "feature-oriented programming" researchr: "https://researchr.org/publication/SulzmannW06" cites: 0 citedby: 0 pages: "65-74" booktitle: "Proceedings of the 6th Workshop on Foundations of Aspect-Oriented Languages, FOAL 2007, Vancouver, British Columbia, Canada, March 13, 2007" editor: - name: "William Harrison" link: "https://researchr.org/alias/william-harrison" volume: "268" series: "ACM International Conference Proceeding Series" publisher: "ACM" kind: "inproceedings" key: "SulzmannW06" - title: "A Compilation Model for Aspect-Oriented Polymorphically Typed Functional Languages" author: - name: "Kung Chen" link: "https://researchr.org/alias/kung-chen" - name: "Shu-Chun Weng" link: "https://researchr.org/alias/shu-chun-weng" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" - name: "Siau-Cheng Khoo" link: "https://researchr.org/alias/siau-cheng-khoo" - name: "Chung-Hsin Chen" link: "https://researchr.org/alias/chung-hsin-chen" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-74061-2_3" links: doi: "http://dx.doi.org/10.1007/978-3-540-74061-2_3" tags: - "modeling language" - "language modeling" researchr: "https://researchr.org/publication/ChenWWKC07" cites: 0 citedby: 0 pages: "34-51" booktitle: "Static Analysis, 14th International Symposium, SAS 2007, Kongens Lyngby, Denmark, August 22-24, 2007, Proceedings" editor: - name: "Hanne Riis Nielson" link: "https://researchr.org/alias/hanne-riis-nielson" - name: "Gilberto Filé" link: "https://researchr.org/alias/gilberto-fil%C3%A9" volume: "4634" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-74060-5" kind: "inproceedings" key: "ChenWWKC07" - title: "The visitor pattern as a reusable, generic, type-safe component" author: - name: "Bruno C. d. S. Oliveira" link: "http://ropas.snu.ac.kr/~bruno/" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" - name: "Jeremy Gibbons" link: "http://www.comlab.ox.ac.uk/jeremy.gibbons/" year: "2008" doi: "http://doi.acm.org/10.1145/1449764.1449799" links: doi: "http://doi.acm.org/10.1145/1449764.1449799" tags: - "reusable components" - "visitor" - "reuse" - "C++" researchr: "https://researchr.org/publication/OliveiraWG08" cites: 0 citedby: 0 pages: "439-456" booktitle: "Proceedings of the 23rd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2008, October 19-23, 2008, Nashville, TN, USA" editor: - name: "Gail E. Harris" link: "https://researchr.org/alias/gail-e.-harris" publisher: "ACM" isbn: "978-1-60558-215-3" kind: "inproceedings" key: "OliveiraWG08" - title: "Gradual Refinement" author: - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" - name: "Jeremy Gibbons" link: "http://www.comlab.ox.ac.uk/jeremy.gibbons/" - name: "Kazutaka Matsuda" link: "http://www.kb.ecei.tohoku.ac.jp/~kztk/" - name: "Zhenjiang Hu" link: "http://research.nii.ac.jp/~hu/" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-13321-3_22" links: doi: "http://dx.doi.org/10.1007/978-3-642-13321-3_22" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/mpc/WangGMH10" tags: - "refinement" researchr: "https://researchr.org/publication/WangGMH10" cites: 0 citedby: 0 pages: "397-425" booktitle: "Mathematics of Program Construction, 10th International Conference, MPC 2010, Québec City, Canada, June 21-23, 2010. Proceedings" editor: - name: "Claude Bolduc" link: "https://researchr.org/alias/claude-bolduc" - name: "Jules Desharnais" link: "https://researchr.org/alias/jules-desharnais" - name: "Béchir Ktari" link: "https://researchr.org/alias/b%C3%A9chir-ktari" volume: "6120" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-13320-6" kind: "inproceedings" key: "WangGMH10" - title: "Type-directed weaving of aspects for higher-order functional languages" author: - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" - name: "Kung Chen" link: "https://researchr.org/alias/kung-chen" - name: "Siau-Cheng Khoo" link: "https://researchr.org/alias/siau-cheng-khoo" year: "2006" doi: "http://doi.acm.org/10.1145/1111542.1111555" links: doi: "http://doi.acm.org/10.1145/1111542.1111555" tags: - "weaving" researchr: "https://researchr.org/publication/WangCK06%3A0" cites: 0 citedby: 0 pages: "78-87" booktitle: "Proceedings of the 2006 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-based Program Manipulation, 2006, Charleston, South Carolina, USA, January 9-10, 2006" editor: - name: "John Hatcliff" link: "http://people.cis.ksu.edu/~hatcliff/newweb/" - name: "Frank Tip" link: "http://domino.research.ibm.com/comm/research_people.nsf/pages/tip.index.html" publisher: "ACM" isbn: "1-59593-196-1" kind: "inproceedings" key: "WangCK06:0" - title: "Type-directed weaving of aspects for polymorphically typed functional languages" author: - name: "Kung Chen" link: "https://researchr.org/alias/kung-chen" - name: "Shu-Chun Weng" link: "https://researchr.org/alias/shu-chun-weng" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" - name: "Siau-Cheng Khoo" link: "https://researchr.org/alias/siau-cheng-khoo" - name: "Chung-Hsin Chen" link: "https://researchr.org/alias/chung-hsin-chen" year: "2010" doi: "http://dx.doi.org/10.1016/j.scico.2010.04.001" links: doi: "http://dx.doi.org/10.1016/j.scico.2010.04.001" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/scp/ChenWWKC10" tags: - "weaving" researchr: "https://researchr.org/publication/ChenWWKC10" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "75" number: "11" pages: "1048-1076" kind: "article" key: "ChenWWKC10" - title: "Combining syntactic and semantic bidirectionalization" author: - name: "Janis Voigtländer" link: "http://www.iai.uni-bonn.de/~jv/" - name: "Zhenjiang Hu" link: "http://research.nii.ac.jp/~hu/" - name: "Kazutaka Matsuda" link: "http://www.kb.ecei.tohoku.ac.jp/~kztk/" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" year: "2010" doi: "http://doi.acm.org/10.1145/1863543.1863571" abstract: "Matsuda et al. [2007, ICFP] and Voigtländer [2009, POPL] introduced two techniques that given a source-to-view function provide an update propagation function mapping an original source and an updated view back to an updated source, subject to standard consistency conditions. Being fundamentally different in approach, both techniques have their respective strengths and weaknesses. Here we develop a synthesis of the two techniques to good effect. On the intersection of their applicability domains we achieve more than what a simple union of applying the techniques side by side delivers." links: doi: "http://doi.acm.org/10.1145/1863543.1863571" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/icfp/VoigtlanderHMW10" tags: - "source-to-source" - "consistency" - "systematic-approach" - "open-source" researchr: "https://researchr.org/publication/VoigtlanderHMW10" cites: 0 citedby: 0 pages: "181-192" booktitle: "Proceeding of the 15th ACM SIGPLAN international conference on Functional programming, ICFP 2010, Baltimore, Maryland, USA, September 27-29, 2010" editor: - name: "Paul Hudak" link: "https://researchr.org/alias/paul-hudak" - name: "Stephanie Weirich" link: "https://researchr.org/alias/stephanie-weirich" publisher: "ACM" isbn: "978-1-60558-794-3" kind: "inproceedings" key: "VoigtlanderHMW10" - title: "Modular generic programming with extensible superclasses" author: - name: "Martin Sulzmann" link: "https://researchr.org/alias/martin-sulzmann" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" year: "2006" doi: "http://doi.acm.org/10.1145/1159861.1159869" links: doi: "http://doi.acm.org/10.1145/1159861.1159869" tags: - "generic programming" - "programming" researchr: "https://researchr.org/publication/SulzmannW06%3A0" cites: 0 citedby: 0 pages: "55-65" booktitle: "Proceedings of the ACM SIGPLAN Workshop on Genetic Programming, WGP 2006, Portland, Oregon, USA, September 16, 2006" editor: - name: "Ralf Hinze" link: "https://researchr.org/alias/ralf-hinze" publisher: "ACM" kind: "inproceedings" key: "SulzmannW06:0" - title: "Enhancing semantic bidirectionalization via shape bidirectionalizer plug-ins" author: - name: "Janis Voigtländer" link: "http://www.iai.uni-bonn.de/~jv/" - name: "Zhenjiang Hu" link: "http://research.nii.ac.jp/~hu/" - name: "Kazutaka Matsuda" link: "http://www.kb.ecei.tohoku.ac.jp/~kztk/" - name: "Meng Wang" link: "http://www.comlab.ox.ac.uk/people/meng.wang/" year: "2013" doi: "http://dx.doi.org/10.1017/S0956796813000130" abstract: "Matsuda et al. (ICFP 2007) and Voigtländer (POPL 2009) have introduced two techniques that given a source-to-view function provide an update propagation function mapping an original source and an updated view back to an updated source, subject to standard consistency conditions. Previously, we developed a synthesis of the two techniques, based on a separation of shape and content aspects (Voigtländer et al., ICFP 2010). Here, we carry that idea further, reworking the technique of Voigtländer such that any shape bidirectionalizer (based on the work of Matsuda et al. or not) can be used as a plug-in, to good effect. We also provide a data-type-generic account, enabling wider reuse, including the use of pluggable bidirectionalization itself as a plug-in. " links: doi: "http://dx.doi.org/10.1017/S0956796813000130" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/jfp/VoigtlanderHMW13" researchr: "https://researchr.org/publication/VoigtlanderHMW13" cites: 0 citedby: 0 journal: "Journal of Functional Programming" volume: "23" number: "5" pages: "515-551" kind: "article" key: "VoigtlanderHMW13"