Bidirectional Transformations: A Cross-Discipline Perspective

GRACE Meeting Notes, State of the Art, and Outlook
  • Krzysztof Czarnecki
  • J. Nathan Foster
  • Zhenjiang Hu
  • Ralf Lämmel
  • Andy Schürr
  • James F. Terwilliger
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5563)

Abstract

The GRACE International Meeting on Bidirectional Transformations was held in December 2008 near Tokyo, Japan. The meeting brought together researchers and practitioners from a variety of sub-disciplines of computer science to share research efforts and help create a new community. In this report, we survey the state of the art and summarize the technical presentations delivered at the meeting. We also describe some insights gathered from our discussions and introduce a new effort to establish a benchmark for bidirectional transformations.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alexe, B., Tan, W.-C., Velegrakis, Y.: STBenchmark: towards a benchmark for mapping systems. In: Proceedings of the VLDB conference, vol. 1(1), pp. 230–244 (2008), http://www.stbenchmark.org/
  2. 2.
    Antkiewicz, M.: Framework-Specific Modeling Languages. Ph.D thesis, University of Waterloo, Electrical and Computer Engineering (2008)Google Scholar
  3. 3.
    Antkiewicz, M., Bartolomei, T.T., Czarnecki, K.: Automatic extraction of framework-specific models from framework-based application code. In: ASE 2007: Proceedings of the twenty-second IEEE/ACM international conference on Automated Software Engineering, pp. 214–223. ACM, New York (2007)Google Scholar
  4. 4.
    Antkiewicz, M., Czarnecki, K.: Framework-Specific Modeling Languages with Round-Trip Engineering. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 692–706. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Antkiewicz, M., Czarnecki, K.: Design Space of Heterogeneous Synchronization. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 3–46. Springer, Heidelberg (2008)Google Scholar
  6. 6.
    Antkiewicz, M., Czarnecki, K., Stephan, M.: Engineering of Framework-Specific Modeling Languages. IEEE Transactions on Software Engineering (2009) (to appear)Google Scholar
  7. 7.
    Arenas, M., Libkin, L.: XML data exchange: Consistency and query answering. Journal of the ACM 55(2) (2008)Google Scholar
  8. 8.
    Arenas, M., Pérez, J., Riveros, C.: The recovery of a schema mapping: bringing exchanged data back. In: PODS 2008: Proceedings of the twenty-seventh ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems, pp. 13–22. ACM, New York (2008)CrossRefGoogle Scholar
  9. 9.
    Axelsen, H.B., Glück, R., Yokoyama, T.: Reversible Machine Code and Its Abstract Processor Architecture. In: Diekert, V., Volkov, M.V., Voronkov, A. (eds.) CSR 2007. LNCS, vol. 4649, pp. 56–69. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Transactions on Database Systems (TODS) 6(4), 557–575 (1981)CrossRefMATHGoogle Scholar
  11. 11.
    Batory, D.S., Azanza, M., Saraiva, J.: The objects and arrows of computational design. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 1–20. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Bennet, C.H.: Logical Reversibility of Computation. IBM Journal of Research and Development 17(6), 525–532 (1973)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Benton, N.: Embedded interpreters. Journal of Functional Programming 15(4), 503–542 (2005)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Berdaguer, P., Cunha, A., Pacheco, H., Visser, J.: Coupled Schema Transformation and Data Conversion for XML and SQL. In: Hanus, M. (ed.) PADL 2007. LNCS, vol. 4354, pp. 290–304. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Bohannon, A., Foster, J.N., Pierce, B.C., Pilkiewicz, A., Schmitt, A.: Boomerang: Resourceful lenses for string data. In: Proceedings of ACM SIGPLAN–SIGACT Symposium on Principles of Programming Languages (POPL 2008), January 2008, pp. 407–419 (2008)Google Scholar
  16. 16.
    Bohannon, A., Pierce, B., Vaughan, J.: Relational lenses: a language for updatable views. In: PODS 2006: Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems, pp. 338–347. ACM, New York (2006)CrossRefGoogle Scholar
  17. 17.
    Brabrand, C., Møller, A., Schwartzbach, M.I.: Dual Syntax for XML Languages. Information Systems 33(4-5), 385–406 (2008); Short version in DBPL 2005 (2005)CrossRefMATHGoogle Scholar
  18. 18.
    Buneman, P., Fernandez, M.F., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB Journal: Very Large Data Bases 9(1), 76–110 (2000)CrossRefGoogle Scholar
  19. 19.
    Buneman, P., Khanna, S., Tan, W.-C.: On propagation of deletions and annotations through views. In: PODS 2002: Proceedings of the twenty-first ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems, pp. 150–158. ACM, New York (2002)CrossRefGoogle Scholar
  20. 20.
    Castro, P., Melnik, S., OAdya, A.: ADO.NET entity framework: raising the level of abstraction in data programming. In: SIGMOD 2007: Proceedings of the 2007 ACM SIGMOD international conference on Management of data, pp. 1070–1072. ACM, New York (2007)CrossRefGoogle Scholar
  21. 21.
    Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: Automating Co-evolution in Model-Driven Engineering. In: 12th International IEEE Enterprise Distributed Object Computing Conference, ECOC 2008, Proceedings, pp. 222–231. IEEE Computer Society, Los Alamitos (2008)CrossRefGoogle Scholar
  22. 22.
    Cleve, A., Hainaut, J.-L.: Co-transformations in Database Applications Evolution. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 409–421. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Culpepper, R., Felleisen, M.: Debugging macros. In: GPCE 2007: Proceedings of the 6th international conference on Generative programming and component engineering, pp. 135–144. ACM, New York (2007)Google Scholar
  24. 24.
    Cunha, J., Saraiva, J., Visser, J.: From spreadsheets to relational databases and back. In: PEPM 2009: Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation, pp. 179–188. ACM, New York (2008)CrossRefGoogle Scholar
  25. 25.
    Czarnecki, K., Helsen, S.: Classification Of Model Transformation Approaches. In: 2nd OOPSLA Workshop on Generative Techniques in the context of Model Driven Architecture (2003), http://www.softmetaware.com/oopsla2003/czarnecki.pdf
  26. 26.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal 45(3), 621–646 (2006)CrossRefGoogle Scholar
  27. 27.
    Dayal, U., Bernstein, P.A.: On the Correct Translation of Update Operations on Relational Views. ACM Transactions on Database Systems (TODS) 7(3), 381–416 (1982)MathSciNetCrossRefMATHGoogle Scholar
  28. 28.
    de Vanter, M.L.V.: Preserving the Documentary Structure of Source Code in Language-Based Transformation Tools. In: 1st IEEE International Workshop on Source Code Analysis and Manipulation (SCAM 2001), Proceedings, pp. 133–143. IEEE Computer Society, Los Alamitos (2001)Google Scholar
  29. 29.
    Diskin, Z.: Mathematics of generic specifications for model management. In: Rivero, Doorn, Ferraggine (eds.) Encyclopedia of Database Technologies and Applications, pp. 351–366. Idea Group (2005)Google Scholar
  30. 30.
    Diskin, Z.: Algebraic Models for Bidirectional Model Synchronization. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 21–36. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  31. 31.
    Diskin, Z., Czarnecki, K., Antkiewicz, M.: Model-versioning-in-the-large: algebraic foundations and the tile notation. In: Comparison and versioning of software models. 3rd Int. Workshop affiliated with ICSE 2009 (2009); To appear in IEEE Digital LibraryGoogle Scholar
  32. 32.
    Eger, D.T.: Bit Level Types (2005) (unpublished manuscript), http://www.yak.net/random/blt/blt-drafts/03/blt.pdf
  33. 33.
    Ehrig, Engels, Kreowski, Rozenberg (eds.): Handbook of Graph Grammars and Computing by Graph Transformation, vol. 1. World Scientific Publishing, Singapore (1997)Google Scholar
  34. 34.
    Ehrig, Engels, Kreowski, Rozenberg (eds.): Handbook of Graph Grammars and Computing by Graph Transformation, vol. 2. World Scientific Publishing, Singapore (1999)MATHGoogle Scholar
  35. 35.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Heidelberg (2006)MATHGoogle Scholar
  36. 36.
    Eramo, R., Pierantonio, A., Romero, J., Vallecillo, A.: Change Management in Multi-Viewpoint Systems using ASP. In: Proceedings of 5th International Workshop on ODP for Enterprise Computing (WODPEC 2008) (September 2008)Google Scholar
  37. 37.
    Fagin, R.: Inverting schema mappings. ACM Transactions on Database Systems (TODS) 32(4) (2007)Google Scholar
  38. 38.
    Fagin, R., Kolaitis, P.G., Miller, R.J., Popa, L.: Data exchange: semantics and query answering. Theoretical Computer Science 336(1), 89–124 (2005)MathSciNetCrossRefMATHGoogle Scholar
  39. 39.
    Fisher, K., Gruber, R.: PADS: a domain-specific language for processing ad hoc data. In: PLDI 2005: Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation, pp. 295–304. ACM, New York (2005)CrossRefGoogle Scholar
  40. 40.
    Fisher, K., Walker, D., Zhu, K., White, P.: From dirt to shovels: fully automatic tool generation from ad hoc data. In: POPL 2008: Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pp. 421–434. ACM, New York (2008)Google Scholar
  41. 41.
    Foster, J.N., Greenwald, M.B., Kirkegaard, C., Pierce, B.C., Schmitt, A.: Exploiting Schemas in Data Synchronization. Journal of Computer and System Sciences 73(4) (June 2007); Short version in DBPL 2005 (2005)Google Scholar
  42. 42.
    Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM Transactions on Programming Languages and Systems (TOPLAS) 29(3) (2007)Google Scholar
  43. 43.
    Foster, J.N., Pilkiewcz, A., Pierce, B.C.: Quotient lenses. In: ICFP 2008: Proceeding of the 13th ACM SIGPLAN international conference on Functional programming, pp. 383–396. ACM, New York (2008)Google Scholar
  44. 44.
    Fuxman, A., Kolaitis, P.G., Miller, R.J., Tan, W.C.: Peer data exchange. ACM Transactions on Database Systems (TODS) 31(4), 1454–1498 (2006)CrossRefGoogle Scholar
  45. 45.
    Giese, H., Wagner, R.: From model transformation to incremental bidirectional model synchronization. Software and Systems Modeling 8(1), 21–43 (2009)CrossRefGoogle Scholar
  46. 46.
    Green, T.J., Ives, Z.G., Tannen, V.: Reconcilable differences. In: ICDT 2009: Proceedings of the 12th International Conference on Database Theory, Proceedings, pp. 212–224. ACM, New York (2009)Google Scholar
  47. 47.
    Green, T.J., Karvounarakis, G., Ives, Z.G., Tannen, V.: Update Exchange with Mappings and Provenance. In: Proceedings of the 33rd International Conference on Very Large Data Bases, VLDB 2007, pp. 675–686. ACM, New York (2007)Google Scholar
  48. 48.
    Hainaut, J.-L., Tonneau, C., Joris, M., Chandelon, M.: Schema Transformation Techniques for Database Reverse Engineering. In: Elmasri, R.A., Kouramajian, V., Thalheim, B. (eds.) ER 1993. LNCS, vol. 823, pp. 364–375. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  49. 49.
    Halevy, A.Y., Ives, Z.G., Suciu, D., Tatarinov, I.: Schema Mediation in Peer Data Management Systems. In: Proceedings of the 19th International Conference on Data Engineering, ICDE 2003, pp. 505–516. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  50. 50.
    Harren, M., Raghavachari, M., Shmueli, O., Burke, M., Bordawekar, R., Pechtchanski, I., Sarkar, V.: XJ: facilitating XML processing in Java. In: WWW 2005: Proceedings of the 14th international conference on World Wide Web, pp. 278–287. ACM, New York (2005)Google Scholar
  51. 51.
    Hettel, T., Lawley, M., Raymond, K.: Model Synchronisation: Definitions for Round-Trip Engineering. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 31–45. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  52. 52.
    Hidaka, S., Hu, Z., Kato, H., Nakano, K.: A Compositional Approach to Bidirectional Model Transformation. In: New Ideas and Emerging Results Track of 31st International Conference on Software Engineering (ICSE 2009, NIER Track) (May 2009) (to appear)Google Scholar
  53. 53.
    Hidaka, S., Hu, Z., Kato, H., Nakano, K.: Towards Compositional Approach to Model Transformation for Software Development. In: 24th Annual ACM Symposium on Applied Computing (March 2009)Google Scholar
  54. 54.
    Hu, Z., Mu, S.-C., Takeichi, M.: A programmable editor for developing structured documents based on bidirectional transformations. In: PEPM 2004: Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, pp. 178–189. ACM, New York (2004); See [55] for a journal versionCrossRefGoogle Scholar
  55. 55.
    Hu, Z., Mu, S.-C., Takeichi, M.: A programmable editor for developing structured documents based on bidirectional transformations. Higher-Order and Symbolic Computation 21(1-2), 89–118 (2008); See [54] for a short versionCrossRefMATHGoogle Scholar
  56. 56.
    Huang, G., Mei, H., Yang, F.: Runtime recovery and manipulation of software architecture of component-based systems. Automated Software Engineering 13(2), 257–281 (2006)CrossRefGoogle Scholar
  57. 57.
    Karvounarakis, G., Ives, Z.G.: Bidirectional Mappings for Data and Update Exchange. In: Proceedings of 11th International Workshop on the Web and Databases, WebDB 2008 (2008), http://webdb2008.como.polimi.it/images/stories/WebDB2008/paper35.pdf
  58. 58.
    Kawanaka, S., Hosoya, H.: biXid: a bidirectional transformation language for XML. In: Proceedings of ICFP 2006: Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming, pp. 201–214. ACM, New York (2006)Google Scholar
  59. 59.
    Keller, A.M.: The Role of Semantics in Translating View Updates. Computer 19(1), 63–73 (1986)CrossRefGoogle Scholar
  60. 60.
    Keller, A.M., Jensen, R., Agarwal, S.: Persistence software: bridging object-oriented programming and relational databases. In: SIGMOD 1993: Proceedings of the 1993 ACM SIGMOD international conference on Management of data, pp. 523–528. ACM, New York (1993)CrossRefGoogle Scholar
  61. 61.
    Königs, A., Schürr, A.: MDI - a Rule-Based Multi-Document and Tool Integration Approach. Journal of Software and System Modeling 5(4), 349–368 (2006); Special Section on Model-based Tool IntegrationCrossRefGoogle Scholar
  62. 62.
    Krishnamurthi, S., Erlich, Y.-D., Felleisen, M.: Expressing Structural Properties as Language Constructs. In: Swierstra, S.D. (ed.) ESOP 1999. LNCS, vol. 1576, pp. 258–272. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  63. 63.
    Lämmel, R.: Grammar Adaptation. In: Oliveira, J.N., Zave, P. (eds.) FME 2001. LNCS, vol. 2021, pp. 550–570. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  64. 64.
    Lämmel, R.: Coupled Software Transformations (Extended Abstract). In: First International Workshop on Software Evolution Transformations, November 2004, 5 pages (2004), http://homepages.cwi.nl/~ralf/CoupledSoftwareTransformations/
  65. 65.
    Lämmel, R.: LINQ to XSD. In: Proceedings, PLAN-X 2007, Programming Language Technologies for XML, An ACM SIGPLAN Workshop collocated with POPL 2007, pp. 95–96 (2007), http://www.plan-x-2007.org/plan-x-2007.pdf
  66. 66.
    Lämmel, R.: Style normalization for canonical X-to-O mappings. In: PEPM 2007: Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, pp. 31–40. ACM, New York (2007)CrossRefGoogle Scholar
  67. 67.
    Lämmel, R., Lohmann, W.: Format Evolution. In: Proceedings of 7th International Conference on Reverse Engineering for Information Systems (RETIS 2001). books@ocg.at, vol. 155, pp. 113–134. OCG (2001)Google Scholar
  68. 68.
    Lämmel, R., Meijer, E.: Mappings Make Data Processing Go ’Round. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 169–218. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  69. 69.
    Lämmel, R., Meijer, E.: Revealing the X/O impedance mismatch (Changing lead into gold). In: Backhouse, R., Gibbons, J., Hinze, R., Jeuring, J. (eds.) SSDGP 2006. LNCS, vol. 4719, pp. 285–367. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  70. 70.
    Lämmel, R., Zaytsev, V.: An Introduction to Grammar Convergence. In: Integrated Formal Methods, 7th International Conference, IFM 2009, Proceedings. LNCS, vol. 5423, pp. 246–260. Springer, Heidelberg (2009)Google Scholar
  71. 71.
    Lee, H., Antkiewicz, M., Czarnecki, K.: Towards a Generic Infrastructure for Framework-specific Integrated Development Environment Extensions. In: 2nd International Workshop on Domain-Specific Program Development (DSPD), in association with GPCE (2008), http://www.labri.fr/perso/reveille/DSPD/2008
  72. 72.
    Li, J.: Low noise reversible MDCT (RMDCT) and its application in progressive-to-lossless embedded audio coding. IEEE Transactions on Signal Processing 53(5), 1870–1880 (2005)MathSciNetCrossRefGoogle Scholar
  73. 73.
  74. 74.
    Lohmann, W., Riedewald, G.: Towards Automatical Migration of Transformation Rules after Grammar Extension. In: 7th European Conference on Software Maintenance and Reengineering (CSMR 2003), Proceedings, pp. 30–39. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  75. 75.
    Lutterkort, D.: Augeas–A Configuration API. In: Proceedings of the Linux Symposium, Ottawa, ON, July 2008, pp. 47–56 (2008)Google Scholar
  76. 76.
    Matsuda, K., Hu, Z., Nakano, K., Hamana, M., Takeichi, M.: Bidirectionalization transformation based on automatic derivation of view complement functions. In: ICFP 2007: Proceedings of the 12th ACM SIGPLAN international conference on Functional programming, pp. 47–58. ACM, New York (2007)CrossRefGoogle Scholar
  77. 77.
    Matsuda, K., Hu, Z., Nakano, K., Hamana, M., Takeichi, M.: Bidirectionalizing Programs with Duplication through Complementary Function Derivation. JSSST Journal: Computer Software 26(2), 5 (2009) (to appear) (in Japanese)Google Scholar
  78. 78.
    McBrien, P., Poulovassilis, A.: Data Integration by Bi-Directional Schema Transformation Rules. In: 19th International Conference on Data Engineering, ICDE 2003, Proceedings, pp. 227–238. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  79. 79.
    Meertens, L.: Designing Constraint Maintainers for User Interaction (June 1998) (manuscript), http://www.kestrel.edu/home/people/meertens
  80. 80.
    Meijer, E., Beckman, B., Bierman, G.: LINQ: reconciling object, relations and XML in the .NET framework. In: SIGMOD 2006: Proceedings of the 2006 ACM SIGMOD international conference on Management of data, pp. 706–706. ACM, New York (2006)CrossRefGoogle Scholar
  81. 81.
    Melnik, S., Adya, A., Bernstein, P.: Compiling mappings to bridge applications and databases. In: SIGMOD 2007: Proceedings of the 2007 ACM SIGMOD international conference on Management of data, pp. 461–472. ACM, New York (2007)CrossRefGoogle Scholar
  82. 82.
    Miller, R., Hernández, M., Haas, L., Yan, L., Ho, C., Fagin, R., Popa, L.: The Clio Project: Managing Heterogeneity. ACM SIGMOD Record 30(1), 78–83 (2001)CrossRefGoogle Scholar
  83. 83.
    Morita, K., Morihata, A., Matsuzaki, K., Hu, Z., Takeichi, M.: Automatic inversion generates divide-and-conquer parallel programs. In: PLDI 2007: Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation, pp. 146–155. ACM, New York (2007)CrossRefGoogle Scholar
  84. 84.
    Mu, S.-C., Hu, Z., Takeichi, M.: An Algebraic Approach to Bi-directional Updating. In: Chin, W.-N. (ed.) APLAS 2004. LNCS, vol. 3302, pp. 2–20. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  85. 85.
    Nakano, K., Hu, Z., Takeichi, M.: Consistent Web Site Updating based on Bidirectional Transformation. In: 10th IEEE International Symposium on Web Site Evolution (WSE 2008) (October 2008)Google Scholar
  86. 86.
    Oliveira, J.: Transforming Data By Calculation. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 134–195. Springer, Heidelberg (2008)Google Scholar
  87. 87.
    Pratt, T.W.: Pair Grammars, Graph Languages and String-to-Graph Translations. Journal of Computer and System Sciences 5, 560–595 (1971)MathSciNetCrossRefMATHGoogle Scholar
  88. 88.
    Ramsey, N.: Embedding an interpreted language using higher-order functions and types. In: IVME 2003: Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators, pp. 6–14. ACM, New York (2003)CrossRefGoogle Scholar
  89. 89.
    Reynolds, J.: Types, abstraction and parametric polymorphism. In: Information Processing 1983, Proceedings, pp. 513–523. Elsevier, Amsterdam (1983)Google Scholar
  90. 90.
    Rodriguez, A., Jeuring, J., Jansson, P., Gerdes, A., Kiselyov, O., Oliveira, B.: Comparing libraries for generic programming in Haskell. In: Haskell 2008: Proceedings of the first ACM SIGPLAN symposium on Haskell, pp. 111–122. ACM, New York (2008)CrossRefGoogle Scholar
  91. 91.
    Schmidt, A., Waas, F., Kersten, M., Florescu, D., Manolescu, I., Carey, M., Busse, R.: The XML Benchmark Project. Technical report, CWI, Amsterdam, The Netherlands, Technical Report INS-R0103 (April 2001), http://www.xml-benchmark.org/
  92. 92.
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  93. 93.
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  94. 94.
    Schürr, A., Klar, F.: 15 Years of Triple Graph Grammars - Research Challenges, New Contributions, Open Problems. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 411–425. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  95. 95.
    Shu, N.C., Housel, B.C., Taylor, R.W., Ghosh, S.P., Lum, V.Y.: EXPRESS: A Data EXtraction, Processing, amd REStructuring System. ACM Transactions on Database Systems (TODS) 2(2), 134–174 (1977)CrossRefGoogle Scholar
  96. 96.
    Song, H., Xiong, Y., Hu, Z., Huang, G., Mei, H.: A Model-Driven Framework for Constructing Runtime Architecture Infrastructures. Technical report, National Institute of Informatics, Japan, Technical Report GRACE-TR-2008-05 (December 2008), http://grace-center.jp/en/rsc_tr.html
  97. 97.
    Stevens, P.: Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  98. 98.
    Stevens, P.: A Landscape of Bidirectional Model Transformations. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 408–424. Springer, Heidelberg (2008)Google Scholar
  99. 99.
    Stevens, P.: Towards an Algebraic Theory of Bidirectional Transformations. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 1–17. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  100. 100.
    Takahashi, S., Matsuoka, S., Miyashita, K., Hosobe, H., Kamada, T.: A Constraint-Based Approach for Visualization and Animation. Constraints 3(1), 61–86 (1998)CrossRefMATHGoogle Scholar
  101. 101.
    Terwilliger, J., Delcambre, L., Logan, J.: Querying through a user interface. Data & Knowledge Engineering 63(3), 774–794 (2007)CrossRefGoogle Scholar
  102. 102.
    Terwilliger, J.F.: Graphical User Interfaces as Updatable Views. Ph.D thesis, Portland State University (2009)Google Scholar
  103. 103.
    Terwilliger, J.F., Melnik, S., Bernstein, P.A.: Language-integrated querying of XML data in SQL server. PVLDB 1(2), 1396–1399 (2008)Google Scholar
  104. 104.
    Vallecillo, A.: A Journey through the Secret Life of Models. In: Model Engineering of Complex Systems (MECS). Dagstuhl Seminar Proceedings, vol. 08331 (2008), http://drops.dagstuhl.de/opus/volltexte/2008/1601
  105. 105.
    Varró, G., Schürr, A., Varro, D.: Benchmarking for Graph Transformation. In: VLHCC 2005: Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 79–88. IEEE Computer Society, Los Alamitos (2005)Google Scholar
  106. 106.
    Vermolen, S., Visser, E.: Heterogeneous Coupled Evolution of Software Languages. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 630–644. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  107. 107.
    Visser, J.: Coupled Transformation of Schemas, Documents, Queries, and Constraints. ENTCS 200(3), 3–23 (2008)Google Scholar
  108. 108.
    Voigtländer, J.: Bidirectionalization for free! (Pearl). In: POPL 2009: Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pp. 165–176. ACM, New York (2009)Google Scholar
  109. 109.
    Wachsmuth, G.: Metamodel Adaptation and Model Co-adaptation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 600–624. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  110. 110.
    Wadler, P.: Views: a way for pattern matching to cohabit with data abstraction. In: POPL 1987: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, pp. 307–313. ACM, New York (1987)Google Scholar
  111. 111.
    Wadler, P.: Theorems for free! In: FPCA 1989: Proceedings of the fourth international conference on Functional programming languages and computer architecture, pp. 347–359. ACM, New York (1989)CrossRefGoogle Scholar
  112. 112.
    Wang, M., Gibbons, J.: Translucent Abstraction: Safe Views through Bidirectional Transformation (2008), http://www.comlab.ox.ac.uk/files/711/Bidi.pdf
  113. 113.
    Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: ASE 2007: Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, pp. 164–173. ACM, New York (2007)Google Scholar
  114. 114.
    Xiong, Y., Zhao, H., Hu, Z., Takeichi, M., Song, H., Mei, H.: Beanbag: Operation-based Synchronization with Intra-relations. Technical Report GRACE-TR-2008-04, Center for Global Research in Advanced Software Science and Engineering, National Institute of Informat iontics, Japan (December 2008), http://grace-center.jp/downloads/GRACE-TR-2008-04.pdf
  115. 115.
  116. 116.
    Yokoyama, T., Axelsen, H.B., Glück, R.: Principles of a Reversible Programming Language. In: CF 2008: Conference on Computing Frontiers, Proceedings, pp. 43–54. ACM, New York (2008)CrossRefGoogle Scholar
  117. 117.
    Yokoyama, T., Axelsen, H.B., Glück, R.: Reversible Flowchart Languages and the Structured Reversible Program Theorem. In: Aceto, L., Damgård, I., Goldberg, L.A., Halldórsson, M.M., Ingólfsdóttir, A., Walukiewicz, I. (eds.) ICALP 2008, Part II. LNCS, vol. 5126, pp. 258–270. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Krzysztof Czarnecki
    • 1
  • J. Nathan Foster
    • 2
  • Zhenjiang Hu
    • 3
  • Ralf Lämmel
    • 4
  • Andy Schürr
    • 5
  • James F. Terwilliger
    • 6
  1. 1.University of WaterlooCanada
  2. 2.University of PennsylvaniaUSA
  3. 3.National Institute of InformaticsJapan
  4. 4.Universität Koblenz-LandauGermany
  5. 5.Technische Universität DarmstadtGermany
  6. 6.Microsoft ResearchUSA

Personalised recommendations