{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,25]],"date-time":"2025-03-25T21:20:48Z","timestamp":1742937648786,"version":"3.40.3"},"publisher-location":"Cham","reference-count":18,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319159393"},{"type":"electronic","value":"9783319159409"}],"license":[{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"DOI":"10.1007\/978-3-319-15940-9_1","type":"book-chapter","created":{"date-parts":[[2015,3,20]],"date-time":"2015-03-20T17:13:04Z","timestamp":1426871584000},"page":"1-28","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["Functional Programming for Domain-Specific Languages"],"prefix":"10.1007","author":[{"given":"Jeremy","family":"Gibbons","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2015,3,21]]},"reference":[{"key":"1_CR1","volume-title":"Domain-Specific Languages","author":"M Fowler","year":"2011","unstructured":"Fowler, M.: Domain-Specific Languages. Addison-Wesley, Reading (2011)"},{"issue":"4","key":"1_CR2","doi-asserted-by":"publisher","first-page":"316","DOI":"10.1145\/1118890.1118892","volume":"37","author":"M Mernik","year":"2005","unstructured":"Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316\u2013344 (2005)","journal-title":"ACM Comput. Surv."},{"issue":"8","key":"1_CR3","doi-asserted-by":"publisher","first-page":"711","DOI":"10.1145\/6424.315691","volume":"29","author":"J Bentley","year":"1986","unstructured":"Bentley, J.: Little languages. Commun. ACM 29(8), 711\u2013721 (1986). Also in \u2018More Programming Pearls\u2019 (Addison-Wesley, 1988)","journal-title":"Commun. ACM"},{"key":"1_CR4","unstructured":"Boulton, R., Gordon, A., Gordon, M., Harrison, J., Herbert, J., Tassel, J.V.: Experience with embedding hardware description languages in HOL. In: Stavridou, V., Melham, T.F., Boute, R.T. (eds.) Proceedings of the IFIP TC10\/WG 10.2 International Conference on Theorem Provers in Circuit Design: Theory, Practice and Experience. Volume A-10 of IFIP Transactions, pp. 129\u2013156. North-Holland\/Elsevier, Nijmegen (1992)"},{"key":"1_CR5","unstructured":"Yorgey, B.: Diagrams 0.6 (2012). http:\/\/projects.haskell.org\/diagrams\/"},{"issue":"12","key":"1_CR6","doi-asserted-by":"publisher","first-page":"1053","DOI":"10.1145\/361598.361623","volume":"15","author":"DL Parnas","year":"1972","unstructured":"Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053\u20131058 (1972)","journal-title":"Commun. ACM"},{"key":"1_CR7","doi-asserted-by":"publisher","first-page":"27","DOI":"10.1016\/0022-0000(79)90011-4","volume":"19","author":"M Wand","year":"1979","unstructured":"Wand, M.: Final algebra semantics and data type extensions. J. Comput. Syst. Sci. 19, 27\u201344 (1979)","journal-title":"J. Comput. Syst. Sci."},{"key":"1_CR8","unstructured":"Kamin, S.: An implementation-oriented semantics of Wadler\u2019s pretty-printing combinators. Oregon Graduate Institute (1998). http:\/\/www-sal.cs.uiuc.edu\/~kamin\/pubs\/pprint.ps"},{"key":"1_CR9","volume-title":"Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, 56\u201380","author":"M Erwig","year":"2012","unstructured":"Erwig, M., Walkingshaw, E.: Semantics-driven DSL design. In: Mernik, M. (ed.) Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, 56\u201380. IGI-Global, Hershey (2012)"},{"key":"1_CR10","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E Gamma","year":"1995","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)"},{"key":"1_CR11","doi-asserted-by":"crossref","unstructured":"Cook, W.R.: On understanding data abstraction, revisited. In: OOPSLA, pp. 557\u2013572. ACM (2009)","DOI":"10.1145\/1639949.1640133"},{"key":"1_CR12","unstructured":"Wadler, P.L.: The expression problem. Posting to java-genericity mailing list (1998)"},{"key":"1_CR13","doi-asserted-by":"crossref","unstructured":"Hutton, G.: Fold and unfold for program semantics. In: Proceedings of the Third ACM SIGPLAN International Conference on Functional Programming, Baltimore, Maryland, pp. 280\u2013288 (1998)","DOI":"10.1145\/291251.289457"},{"key":"1_CR14","unstructured":"W3C: Scalable vector graphics (SVG) 1.1: recognized color keyword names (2011). http:\/\/www.w3.org\/TR\/SVG11\/types.html#ColorKeywords"},{"key":"1_CR15","doi-asserted-by":"crossref","unstructured":"Henderson, P.: Functional geometry. In: Lisp and Functional Programming, pp. 179\u2013187 (1982). http:\/\/users.ecs.soton.ac.uk\/ph\/funcgeo.pdf","DOI":"10.1145\/800068.802148"},{"issue":"4","key":"1_CR16","doi-asserted-by":"publisher","first-page":"349","DOI":"10.1023\/A:1022986521797","volume":"15","author":"P Henderson","year":"2002","unstructured":"Henderson, P.: Functional geometry. High. Order Symb. Comput. 15(4), 349\u2013365 (2002). Revision of [15]","journal-title":"High. Order Symb. Comput."},{"key":"1_CR17","unstructured":"Bu\u00df, F.: Functional geometry (2005). http:\/\/www.frank-buss.de\/lisp\/functional.html"},{"key":"1_CR18","unstructured":"Escher, M.C.: Square limit (1964). http:\/\/www.wikipaintings.org\/en\/m-c-escher\/square-limit"}],"container-title":["Lecture Notes in Computer Science","Central European Functional Programming School"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-15940-9_1","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,1,24]],"date-time":"2023-01-24T11:16:35Z","timestamp":1674558995000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-319-15940-9_1"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"ISBN":["9783319159393","9783319159409"],"references-count":18,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-15940-9_1","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2015]]},"assertion":[{"value":"21 March 2015","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}