{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,16]],"date-time":"2024-09-16T13:39:44Z","timestamp":1726493984123},"reference-count":63,"publisher":"Elsevier BV","license":[{"start":{"date-parts":[[2024,6,1]],"date-time":"2024-06-01T00:00:00Z","timestamp":1717200000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2024,2,23]],"date-time":"2024-02-23T00:00:00Z","timestamp":1708646400000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100003407","name":"Ministero dell\u2019Istruzione, dell\u2019Universit\u00e0 e della Ricerca","doi-asserted-by":"publisher","award":["PRIN 2020TL3X8X"],"id":[{"id":"10.13039\/501100003407","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100024370","name":"Ministero dell'Istruzione dell'Universita e della Ricerca","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100024370","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["elsevier.com","sciencedirect.com"],"crossmark-restriction":true},"short-container-title":["Journal of Systems and Software"],"published-print":{"date-parts":[[2024,6]]},"DOI":"10.1016\/j.jss.2024.112006","type":"journal-article","created":{"date-parts":[[2024,3,1]],"date-time":"2024-03-01T16:28:05Z","timestamp":1709310485000},"page":"112006","update-policy":"http:\/\/dx.doi.org\/10.1016\/elsevier_cm_policy","source":"Crossref","is-referenced-by-count":2,"special_numbering":"C","title":["\u2605<\/mml:mo><\/mml:math>piler: Compilers in search of compilations"],"prefix":"10.1016","volume":"212","author":[{"ORCID":"http:\/\/orcid.org\/0000-0002-3867-6175","authenticated-orcid":false,"given":"Francesco","family":"Bertolotti","sequence":"first","affiliation":[]},{"ORCID":"http:\/\/orcid.org\/0000-0002-4652-8113","authenticated-orcid":false,"given":"Walter","family":"Cazzola","sequence":"additional","affiliation":[]},{"ORCID":"http:\/\/orcid.org\/0000-0001-7452-2440","authenticated-orcid":false,"given":"Luca","family":"Favalli","sequence":"additional","affiliation":[]}],"member":"78","reference":[{"key":"10.1016\/j.jss.2024.112006_b1","series-title":"Proceedings of the 32nd Computer Security Foundations Symposium","first-page":"256","article-title":"Journey beyond full abstraction: Exploring robust property preservation for secure compilation","author":"Abate","year":"2019"},{"key":"10.1016\/j.jss.2024.112006_b2","doi-asserted-by":"crossref","first-page":"183","DOI":"10.1145\/947783.948658","article-title":"Source-to-source translation: ada to pascal and pascal to ada","volume":"15","author":"Albrecht","year":"1980","journal-title":"ACM Sigplan Not."},{"key":"10.1016\/j.jss.2024.112006_b3","unstructured":"Alon, U., Brody, S., Levy, O., Yahav, E., 2019. code2seq: Generating sequences from structured representations of code. In: Rush, A. (Ed.), Proceedings of the 7th International Conference on Learning Representations. ICLR\u201919, New Orleans, LA, USA."},{"key":"10.1016\/j.jss.2024.112006_b4","series-title":"Proceedings of the 18th European Symposium on Programming","first-page":"160","article-title":"Verified, executable parsing","author":"Barthwal","year":"2009"},{"key":"10.1016\/j.jss.2024.112006_b5","doi-asserted-by":"crossref","first-page":"4677","DOI":"10.1109\/TSE.2023.3310793","article-title":"CombTransformers: statement-wise transformers for statement-wise representations","volume":"49","author":"Bertolotti","year":"2023","journal-title":"IEEE Trans. Softw. Eng."},{"key":"10.1016\/j.jss.2024.112006_b6","first-page":"6:1","article-title":"Fold2Vec: towards a statement based representation of code for code comprehension","volume":"32","author":"Bertolotti","year":"2023","journal-title":"Trans. Softw. Eng. Methodol."},{"key":"10.1016\/j.jss.2024.112006_b7","doi-asserted-by":"crossref","DOI":"10.1016\/j.jss.2023.111704","article-title":"On the granularity of linguistic reuse","volume":"202","author":"Bertolotti","year":"2023","journal-title":"J. Syst. Softw."},{"key":"10.1016\/j.jss.2024.112006_b8","series-title":"Proceedings of the 37th European Conference on Object-Oriented Programming","first-page":"38:1","article-title":"Building code transpilers for domain-specific languages using program synthesis","author":"Bhatia","year":"2023"},{"key":"10.1016\/j.jss.2024.112006_b9","series-title":"Proceedings of the 4th Worksop on the Implementation, Compilation, Optimization of Object-Oriented Languages and Programming Systems","first-page":"18","article-title":"Tracing the meta-level: PyPy\u2019s tracing JIT compiler","author":"Bolz","year":"2009"},{"year":"2002","series-title":"Essential.Net: The Common Language Runtime","author":"Box","key":"10.1016\/j.jss.2024.112006_b10"},{"key":"10.1016\/j.jss.2024.112006_b11","doi-asserted-by":"crossref","first-page":"71","DOI":"10.1016\/j.cl.2017.07.003","article-title":"\u03bc-DSU: A micro-language based approach to dynamic software updating","volume":"51","author":"Cazzola","year":"2018","journal-title":"Comput. Languag. Syst. Struct."},{"key":"10.1016\/j.jss.2024.112006_b12","doi-asserted-by":"crossref","first-page":"4:1","DOI":"10.1145\/3363562","article-title":"A survey of compiler testing","volume":"53","author":"Chen","year":"2021","journal-title":"ACM Comput. Surv."},{"key":"10.1016\/j.jss.2024.112006_b13","doi-asserted-by":"crossref","first-page":"132","DOI":"10.1007\/978-3-662-46734-3_4","article-title":"Reusable components of semantic specifications","volume":"12","author":"Churchill","year":"2015","journal-title":"Trans. Aspect-Oriented Softw. Dev."},{"key":"10.1016\/j.jss.2024.112006_b14","article-title":"JPT: a simple java-python translator","volume":"5","author":"Coco","year":"2018","journal-title":"Comput. Appl.: Int. J."},{"key":"10.1016\/j.jss.2024.112006_b15","first-page":"125","article-title":"A*-based pathfinding in modern computer games","volume":"11","author":"Cui","year":"2011","journal-title":"Int. J. Comput. Sci. Netw. Secur."},{"key":"10.1016\/j.jss.2024.112006_b16","series-title":"Modern Software Engineering Methodologies for Mobile and Cloud Environments","first-page":"240","article-title":"Migrating java to mobile platforms through HaXe: an MDD approach","author":"D\u00edaz Bilotto","year":"2016"},{"key":"10.1016\/j.jss.2024.112006_b17","series-title":"Proceedings of the 8th ACM SIGOPS European Workshop on Support for Composing Distributed Applications","first-page":"175","article-title":"A dynamically configurable, multi-language execution platform","author":"Folliot","year":"1998"},{"key":"10.1016\/j.jss.2024.112006_b18","first-page":"8:1","article-title":"Cross-language interoperability in a multi-language runtime","volume":"40","author":"Grimmer","year":"2018","journal-title":"Trans. Progr. Lang. Syst."},{"key":"10.1016\/j.jss.2024.112006_b19","series-title":"Companion Proceedings of the 30th International Conference on Software Enginering","first-page":"925","article-title":"MontiCore: a framework for the development of textual domain specific languages","author":"Gr\u00f6nninger","year":"2008"},{"key":"10.1016\/j.jss.2024.112006_b20","doi-asserted-by":"crossref","first-page":"100","DOI":"10.1109\/TSSC.1968.300136","article-title":"A formal basis for the heuristic determination of minimum cost paths","volume":"4","author":"Hart","year":"1968","journal-title":"IEEE Trans. Syst. Sci. Cybern."},{"key":"10.1016\/j.jss.2024.112006_b21","doi-asserted-by":"crossref","first-page":"310","DOI":"10.1016\/j.dam.2013.10.037","article-title":"Distances between sets based on set commonality","volume":"167","author":"Horadam","year":"2014","journal-title":"Discrete Appl. Math."},{"key":"10.1016\/j.jss.2024.112006_b22","series-title":"Proceedings of the ACM International Conference on Object-Oriented Programming Systems Languages and Applications","first-page":"444","article-title":"The spoofax language workbench: rules for declarative specification of languages and IDEs","author":"Kats","year":"2010"},{"key":"10.1016\/j.jss.2024.112006_b23","series-title":"Proceedings of ACM Conference on New Ideas in Programming and Reflections on Software","article-title":"Pure and declarative syntax definition: paradise lost and regained","author":"Kats","year":"2010"},{"key":"10.1016\/j.jss.2024.112006_b24","series-title":"Proceedings of the 18th International Conference on Functional Programming","first-page":"343","article-title":"A nanopass framework for commercial compiler development","author":"Keep","year":"2013"},{"key":"10.1016\/j.jss.2024.112006_b25","series-title":"Proceedings of the International Summer School on Generative and Transformational Techniques in Software Engineering III","first-page":"222","article-title":"EASY meta-programming with rascal","author":"Klint","year":"2009"},{"year":"2008","series-title":"An Extensible Platform for Specification of Integrated Languages for Model Management","author":"Kolovos","key":"10.1016\/j.jss.2024.112006_b26"},{"key":"10.1016\/j.jss.2024.112006_b27","doi-asserted-by":"crossref","first-page":"353","DOI":"10.1007\/s10009-010-0142-1","article-title":"MontiCore: a framework for compositional development of domain specific languages","volume":"12","author":"Krahn","year":"2010","journal-title":"Int. J. Softw. Tools Technol. Transf."},{"key":"10.1016\/j.jss.2024.112006_b28","series-title":"Proceedings of the 20th International Software Product Line Conference","first-page":"50","article-title":"Apples and oranges: comparing top-down and bottom-up language product lines","author":"K\u00fchn","year":"2016"},{"key":"10.1016\/j.jss.2024.112006_b29","series-title":"Proceedings of the 23rd International Software Product Line Conference","first-page":"131","article-title":"Piggyback IDE support for language product lines","author":"K\u00fchn","year":"2019"},{"key":"10.1016\/j.jss.2024.112006_b30","series-title":"Proceedings of the 2nd International Symposium on Code Generation and Optimization","first-page":"75","article-title":"LLVM: a compilation framework for lifelong program analysis and transformation","author":"Lattner","year":"2004"},{"key":"10.1016\/j.jss.2024.112006_b31","series-title":"Companion Proceedings of the 44th International Conference on Software Engineering","first-page":"354","article-title":"In rust we trust: a transpiler from unsafe c to safer rust","author":"Ling","year":"2022"},{"key":"10.1016\/j.jss.2024.112006_b32","series-title":"Proceedings of the 20th International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation","first-page":"127","article-title":"Transpiling python to rust for optimized performance","author":"Lunnikivi","year":"2020"},{"key":"10.1016\/j.jss.2024.112006_b33","first-page":"206","article-title":"Leveraging software product lines engineering in the development of external DSLs: a systematic literature review","volume":"46","author":"M\u00e9ndez-Acu\u00f1a","year":"2016","journal-title":"Comput. Lang. Syst. Struct."},{"key":"10.1016\/j.jss.2024.112006_b34","series-title":"Proceedings of the ACM international Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","first-page":"39","article-title":"Socio-PLT: principles for programming language adoption","author":"Meyerovich","year":"2012"},{"key":"10.1016\/j.jss.2024.112006_b35","series-title":"Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications","first-page":"1","article-title":"Empirical analysis of programming language adoption","author":"Meyerovich","year":"2013"},{"key":"10.1016\/j.jss.2024.112006_b36","unstructured":"Mosses, P.D., 2019a. A Component-Based Formal Language Workbench. In: Monahan, R., Prevosto, V., Proen\u00e7a, J. (Eds.), Proceedings of the 5th Workshop on Formal Integrated Development Environment. F-IDE\u201919, Porto, Portugal, pp. 29\u201334."},{"key":"10.1016\/j.jss.2024.112006_b37","doi-asserted-by":"crossref","first-page":"39","DOI":"10.1016\/j.jvlc.2018.11.003","article-title":"Software meta-language engineering and CBS","volume":"50","author":"Mosses","year":"2019","journal-title":"J. Comput. Lang."},{"key":"10.1016\/j.jss.2024.112006_b38","series-title":"Proceedings of the 12th International Conference on Compiler Construction","first-page":"138","article-title":"Polyglot: an extensible compiler framework for java","author":"Nystrom","year":"2003"},{"key":"10.1016\/j.jss.2024.112006_b39","doi-asserted-by":"crossref","first-page":"76","DOI":"10.1145\/2591013","article-title":"Unifying functional and object-oriented programming with scala","volume":"57","author":"Odersky","year":"2014","journal-title":"Commun. ACM"},{"key":"10.1016\/j.jss.2024.112006_b40","series-title":"Proceedings of the 10th International Conference on Principles and Practices of Programming on the Java Platform","first-page":"165","article-title":"JetBrains MPS as a tool for extending java","author":"Pech","year":"2013"},{"key":"10.1016\/j.jss.2024.112006_b41","doi-asserted-by":"crossref","first-page":"215","DOI":"10.1142\/S0129626400000214","article-title":"ROSE: compiler support for object-oriented frameworks","volume":"10","author":"Quinlan","year":"2000","journal-title":"Parallel Process. Lett."},{"key":"10.1016\/j.jss.2024.112006_b42","unstructured":"Quinlan, D., Liao, C., 2011. The Rose Source-to-Source Compiler Infrastructure. In: Midkiff, S., Eigenmann, R., Bae, H. (Eds.), Proceedings of the Cetus Users and Compiler Infrastructure Workshop. Galveston, TX, USA, pp. 1\u20133."},{"key":"10.1016\/j.jss.2024.112006_b43","series-title":"Proceedings of the 3rd International Conference on Theory and Practice of Model Transformations","first-page":"184","article-title":"Model migration with epsilon flock","author":"Rose","year":"2010"},{"key":"10.1016\/j.jss.2024.112006_b44","doi-asserted-by":"crossref","first-page":"735","DOI":"10.1007\/s10270-012-0296-2","article-title":"Epsilon flock: a model migration language","volume":"13","author":"Rose","year":"2014","journal-title":"Softw. Syst. Model."},{"key":"10.1016\/j.jss.2024.112006_b45","series-title":"Proceedings of the 34th Conference on Neural Information Processing Systems","first-page":"20601","article-title":"Unsupervised translation of programming languages","author":"Roziere","year":"2020"},{"key":"10.1016\/j.jss.2024.112006_b46","unstructured":"Rumpe, B., H\u00f6lldobler, K., Kautz, O., 2021. MontiCore: Language Workbench and Library. In: Handbook. Aachen, Germany."},{"key":"10.1016\/j.jss.2024.112006_b47","series-title":"Proceedings of the 9th International Conference on Functional Programming","first-page":"201","article-title":"A nanopass infrastructure for compiler education","author":"Sarkar","year":"2004"},{"key":"10.1016\/j.jss.2024.112006_b48","series-title":"Proceedings of the 8th International Conference on Mobile Software Engineering and Systems","first-page":"73","article-title":"SequalsK\u2014a bidirectional swift-kotlin-transpiler","author":"Schultes","year":"2021"},{"key":"10.1016\/j.jss.2024.112006_b49","doi-asserted-by":"crossref","first-page":"207","DOI":"10.1002\/cpe.657","article-title":"Automatic translation of fortran to JVM bytecode","volume":"15","author":"Seymour","year":"2003","journal-title":"Concurr. Comput.: Pract. Exper."},{"key":"10.1016\/j.jss.2024.112006_b50","article-title":"PathPair2Vec: an AST path pair-based code representation method for defect prediction","volume":"59","author":"Shi","year":"2020","journal-title":"J. Comput. Lang."},{"year":"2007","series-title":"Thrift: scalable cross-language services implementation","author":"Slee","key":"10.1016\/j.jss.2024.112006_b51"},{"key":"10.1016\/j.jss.2024.112006_b52","series-title":"Proceedings of the ACM international Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","first-page":"283","article-title":"The programming language wars: questions and responsibilities for the programming language community","author":"Stefik","year":"2014"},{"key":"10.1016\/j.jss.2024.112006_b53","series-title":"Proceedings of the 31st International Conference on Object-Oriented Programming, Systems, Languages, and Applications","first-page":"849","article-title":"Finding compiler bugs via live code mutation","author":"Sun","year":"2016"},{"key":"10.1016\/j.jss.2024.112006_b54","doi-asserted-by":"crossref","first-page":"437","DOI":"10.1145\/360303.360308","article-title":"The denotational semantics of programming languages","volume":"19","author":"Tennent","year":"1976","journal-title":"Commun. ACM"},{"key":"10.1016\/j.jss.2024.112006_b55","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1016\/j.cl.2015.02.001","article-title":"Neverlang: a framework for feature-oriented language development","volume":"43","author":"Vacchi","year":"2015","journal-title":"Comput. Languag. Syst. Struct."},{"key":"10.1016\/j.jss.2024.112006_b56","series-title":"Companion Proceedings of the 15th International Conference on Modularity","first-page":"8","article-title":"Tool support for component-based semantics","author":"van Binsbergen","year":"2016"},{"year":"2000","series-title":"Inside the Java Virtual Machine","author":"Venners","key":"10.1016\/j.jss.2024.112006_b57"},{"key":"10.1016\/j.jss.2024.112006_b58","doi-asserted-by":"crossref","first-page":"46","DOI":"10.1109\/35.565655","article-title":"CORBA: integrating diverse applications within distributed heterogeneous environments","volume":"35","author":"Vinoski","year":"1997","journal-title":"IEEE Commun. Mag."},{"key":"10.1016\/j.jss.2024.112006_b59","series-title":"Proceedings of the 34th International Conference on Software Engineering","first-page":"1449","article-title":"Language modularity with the MPS language workbench","author":"V\u00f6lter","year":"2012"},{"key":"10.1016\/j.jss.2024.112006_b60","doi-asserted-by":"crossref","first-page":"35","DOI":"10.1109\/MS.2014.100","article-title":"Language design with the spoofax language workbench","volume":"31","author":"Wachsmuth","year":"2014","journal-title":"IEEE Softw."},{"key":"10.1016\/j.jss.2024.112006_b61","series-title":"Proceedings of the 3rd Annual Conference on Systems, Programming and Applications: Software for Humanity","first-page":"1","article-title":"Truffle: a self-optimizing runtime system","author":"Wimmer","year":"2012"},{"key":"10.1016\/j.jss.2024.112006_b62","unstructured":"Wolczko, M., Ole, A., Ungar, D., 1999. Towards a Universal Implementation Substrate for Object-Oriented Languages. In: Proceedings of the OOPSLA Workshop on Simplicity, Performance and Portability in Virtual Machine Design. WSPPVMD\u201999, Denver, CO, USA."},{"key":"10.1016\/j.jss.2024.112006_b63","series-title":"Proceedings of the 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software","first-page":"187","article-title":"One VM to rule them all","author":"W\u00fcrthinger","year":"2013"}],"container-title":["Journal of Systems and Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0164121224000499?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0164121224000499?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2024,4,6]],"date-time":"2024-04-06T00:23:23Z","timestamp":1712363003000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0164121224000499"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,6]]},"references-count":63,"alternative-id":["S0164121224000499"],"URL":"https:\/\/doi.org\/10.1016\/j.jss.2024.112006","relation":{},"ISSN":["0164-1212"],"issn-type":[{"type":"print","value":"0164-1212"}],"subject":[],"published":{"date-parts":[[2024,6]]},"assertion":[{"value":"Elsevier","name":"publisher","label":"This article is maintained by"},{"value":"piler: Compilers in search of compilations","name":"articletitle","label":"Article Title"},{"value":"Journal of Systems and Software","name":"journaltitle","label":"Journal Title"},{"value":"https:\/\/doi.org\/10.1016\/j.jss.2024.112006","name":"articlelink","label":"CrossRef DOI link to publisher maintained version"},{"value":"article","name":"content_type","label":"Content Type"},{"value":"\u00a9 2024 The Author(s). Published by Elsevier Inc.","name":"copyright","label":"Copyright"}],"article-number":"112006"}}