% Bibliography downloaded from https://researchr.org/downloadbibtex/bibliography/analysis-and-compilation-separate-compilation @article{wadler1998expression, title = {The expression problem}, author = {Philip Wadler}, year = {1998}, month = {11}, url = {https://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt}, researchr = {https://researchr.org/publication/wadler1998expression}, cites = {0}, citedby = {0}, journal = {Java-genericity mailing list}, } @inproceedings{Mosses02, title = {Pragmatics of Modular SOS}, author = {Peter D. Mosses}, year = {2002}, doi = {10.1007/3-540-45719-4_3}, url = {https://doi.org/10.1007/3-540-45719-4_3}, tags = {SOS}, researchr = {https://researchr.org/publication/Mosses02}, cites = {0}, citedby = {0}, pages = {21-40}, booktitle = {Algebraic Methodology and Software Technology, 9th International Conference, AMAST 2002, Saint-Gilles-les-Bains, Reunion Island, France, September 9-13, 2002, Proceedings}, editor = {Hélène Kirchner and Christophe Ringeissen}, volume = {2422}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-44144-1}, } @inproceedings{ErdwegGR12, title = {Language composition untangled}, author = {Sebastian Erdweg and Paolo G. Giarrusso and Tillmann Rendel}, year = {2012}, doi = {10.1145/2427048.2427055}, url = {http://doi.acm.org/10.1145/2427048.2427055}, researchr = {https://researchr.org/publication/ErdwegGR12}, cites = {0}, citedby = {0}, pages = {7}, booktitle = {International Workshop on Language Descriptions, Tools, and Applications, LDTA '12, Tallinn, Estonia, March 31 - April 1, 2012}, editor = {Anthony Sloane and Suzana Andova}, publisher = {ACM}, isbn = {978-1-4503-1536-4}, } @inproceedings{Wirth07, title = {Modula-2 and Oberon}, author = {Niklaus Wirth}, year = {2007}, doi = {10.1145/1238844.1238847}, url = {http://doi.acm.org/10.1145/1238844.1238847}, researchr = {https://researchr.org/publication/Wirth07}, cites = {0}, citedby = {0}, pages = {1-10}, booktitle = {Proceedings of the Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III), San Diego, California, USA, 9-10 June 2007}, editor = {Barbara G. Ryder and Brent Hailpern}, publisher = {ACM}, } @inproceedings{DrossopoulouEW99, title = {A Fragment Calculus -- Towards a Model of Separate Compilation, Linking and Binary Compatibility}, author = {Sophia Drossopoulou and Susan Eisenbach and David Wragg}, year = {1999}, doi = {10.1109/LICS.1999.782606}, url = {https://doi.org/10.1109/LICS.1999.782606}, researchr = {https://researchr.org/publication/DrossopoulouEW99}, cites = {0}, citedby = {0}, pages = {147-156}, booktitle = {Proceedings, 14th Annual IEEE Symposium on Logic in Computer Science, 2-5 July, 1999, Trento, Italy}, publisher = {IEEE Computer Society}, } @inproceedings{Jim96, title = {What Are Principal Typings and What Are They Good For?}, author = {Trevor Jim}, year = {1996}, doi = {10.1145/237721.237728}, url = {http://doi.acm.org/10.1145/237721.237728}, researchr = {https://researchr.org/publication/Jim96}, cites = {0}, citedby = {0}, pages = {42-53}, booktitle = {POPL}, } @inproceedings{Wirth79, title = {The Module: A System Structuring Facility in High-Level Programming Languages}, author = {Niklaus Wirth}, year = {1979}, tags = {programming languages, programming}, researchr = {https://researchr.org/publication/Wirth79}, cites = {0}, citedby = {0}, pages = {1-24}, booktitle = {Language Design and Programming Methodology, Proceedings of a Symposium Held in Sydney, Australia, 10-11 September, 1979}, editor = {Jeffrey M. Tobias}, volume = {79}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-09745-7}, } @article{WykBGK10, title = {Silver: An extensible attribute grammar system}, author = {Eric {Van Wyk} and Derek Bodin and Jimin Gao and Lijesh Krishnan}, year = {2010}, doi = {10.1016/j.scico.2009.07.004}, url = {http://dx.doi.org/10.1016/j.scico.2009.07.004}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/WykBGK10}, cites = {0}, citedby = {0}, journal = {Science of Computer Programming}, volume = {75}, number = {1-2}, pages = {39-54}, } @article{EarleyC72, title = {A Method for Incrementally Compiling Languages with Nested Statement Structure}, author = {Jay Earley and Paul Caizergues}, year = {1972}, tags = {compiler, incremental}, researchr = {https://researchr.org/publication/EarleyC72}, cites = {0}, citedby = {0}, journal = {Communications of the ACM}, volume = {15}, number = {12}, pages = {1040-1044}, } @inproceedings{Reiss84:2, title = {An approach to incremental compilation}, author = {Steven P. Reiss}, year = {1984}, doi = {10.1145/502874.502889}, url = {http://doi.acm.org/10.1145/502874.502889}, tags = {incremental, systematic-approach}, researchr = {https://researchr.org/publication/Reiss84%3A2}, cites = {0}, citedby = {0}, pages = {144-156}, booktitle = {Proceedings of the 1984 SIGPLAN Symposium on Compiler Construction, Montreal, Canada, June 17-22, 1984}, publisher = {ACM}, } @article{GeschkeMS77, title = {Early Experience with Mesa}, author = {Charles M. Geschke and James H. Morris Jr. and Edwin H. Satterthwaite}, year = {1977}, month = {8}, doi = {10.1145/359763.359771}, url = {https://doi.org/10.1145/359763.359771}, researchr = {https://researchr.org/publication/GeschkeMS77}, cites = {0}, citedby = {0}, journal = {Communications of the ACM}, volume = {20}, number = {8}, pages = {540-553}, } @inproceedings{AdityaN91, title = {Incremental Polymorphism}, author = {Shail Aditya and Rishiyur S. Nikhil}, year = {1991}, tags = {incremental}, researchr = {https://researchr.org/publication/AdityaN91}, cites = {0}, citedby = {0}, pages = {379-405}, booktitle = {Functional Programming Languages and Computer Architecture, 5th ACM Conference, Cambridge, MA, USA, August 26-30, 1991, Proceedings}, editor = {John Hughes}, volume = {523}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-54396-1}, } @article{Swierstra08, title = {Data types à la carte}, author = {Wouter Swierstra}, year = {2008}, doi = {10.1017/S0956796808006758}, url = {http://dx.doi.org/10.1017/S0956796808006758}, tags = {data-flow}, researchr = {https://researchr.org/publication/Swierstra08}, cites = {0}, citedby = {0}, journal = {Journal of Functional Programming}, volume = {18}, number = {4}, pages = {423-436}, } @article{Mosses-JLAP-2004, title = {Modular structural operational semantics}, author = {Peter D. Mosses}, year = {2004}, doi = {10.1016/j.jlap.2004.03.008}, url = {http://dx.doi.org/10.1016/j.jlap.2004.03.008}, tags = {programming languages, semantics, rule-based, structural operational semantics, SOS, rules, reviewing, programming, operational semantics, incremental}, researchr = {https://researchr.org/publication/Mosses-JLAP-2004}, cites = {0}, citedby = {0}, journal = {Journal of Logic and Algebraic Programming}, volume = {60-61}, pages = {195-228}, } @inproceedings{ErdwegLW15, title = {A sound and optimal incremental build system with dynamic dependencies}, author = {Sebastian Erdweg and Moritz Lichter and Manuel Weiel}, year = {2015}, doi = {10.1145/2814270.2814316}, url = {http://doi.acm.org/10.1145/2814270.2814316}, researchr = {https://researchr.org/publication/ErdwegLW15}, cites = {0}, citedby = {1}, pages = {89-106}, booktitle = {Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications}, editor = {Jonathan Aldrich and Patrick Eugster}, publisher = {ACM}, isbn = {978-1-4503-3689-5}, } @inproceedings{EkmanH07, title = {The {JastAdd} extensible {Java} compiler}, author = {Torbjörn Ekman and Görel Hedin}, year = {2007}, doi = {10.1145/1297027.1297029}, url = {http://doi.acm.org/10.1145/1297027.1297029}, tags = {AspectJ, Java, application framework, architecture, analysis, language design, static analysis, type system, extensible compiler, type checking, compiler, JastAdd, design, extensible language}, researchr = {https://researchr.org/publication/EkmanH07}, cites = {0}, citedby = {3}, pages = {1-18}, booktitle = {Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, October 21-25, 2007, Montreal, Quebec, Canada}, editor = {Richard P. Gabriel and David F. Bacon and Cristina Videira Lopes and Guy L. Steele Jr.}, publisher = {ACM}, isbn = {978-1-59593-786-5}, } @misc{fowler2004inversion, title = {Inversion of control containers and the dependency injection pattern}, author = {Martin Fowler}, year = {2004}, month = {January}, researchr = {https://researchr.org/publication/fowler2004inversion}, cites = {0}, citedby = {0}, howpublished = {\url{http://martinfowler.com/articles/injection.html}}, } @inproceedings{GrossZZ89, title = {Parallel Compilation for a Parallel Machine}, author = {Thomas R. Gross and Angelika Zobel and Markus Zolg}, year = {1989}, researchr = {https://researchr.org/publication/GrossZZ89}, cites = {0}, citedby = {0}, pages = {91-100}, booktitle = {PLDI}, } @inproceedings{SchwartzDB84, title = {Incremental compilation in Magpie}, author = {Mayer D. Schwartz and Norman M. Delisle and Vimal S. Begwani}, year = {1984}, doi = {10.1145/502874.502887}, url = {http://doi.acm.org/10.1145/502874.502887}, tags = {incremental}, researchr = {https://researchr.org/publication/SchwartzDB84}, cites = {0}, citedby = {0}, pages = {122-131}, booktitle = {Proceedings of the 1984 SIGPLAN Symposium on Compiler Construction, Montreal, Canada, June 17-22, 1984}, publisher = {ACM}, } @article{BackusH64, title = {Fortran}, author = {John Warner Backus and William P. Heising}, year = {1964}, doi = {10.1109/PGEC.1964.263818}, url = {http://dx.doi.org/10.1109/PGEC.1964.263818}, researchr = {https://researchr.org/publication/BackusH64}, cites = {0}, citedby = {0}, journal = {IEEE Transactions on Computers}, volume = {13}, number = {4}, pages = {382-385}, } @inproceedings{KieburtzBH78, title = {A Type-Checking Program Linkage System for Pascal}, author = {Richard B. Kieburtz and W. Barabash and C. R. Hill}, year = {1978}, tags = {type system, C++, type checking, Pascal}, researchr = {https://researchr.org/publication/KieburtzBH78}, cites = {0}, citedby = {0}, pages = {23-28}, booktitle = {Proceedings of the 3rd International Conference on Software Engineering, Atlanta, Georgia, USA, May 10-12, 1978}, editor = {Maurice V. Wilkes and Laszlo A. Belady and Y. H. Su and Harry Hayman and Philip H. Enslow Jr.}, publisher = {IEEE Computer Society}, } @inproceedings{ZengE05, title = {Separate Compilation for Synchronous Modules}, author = {Jia Zeng and Stephen A. Edwards}, year = {2005}, doi = {10.1007/11599555_15}, url = {http://dx.doi.org/10.1007/11599555_15}, researchr = {https://researchr.org/publication/ZengE05}, cites = {0}, citedby = {0}, pages = {129-140}, booktitle = {Embedded Software and Systems, Second International Conference, ICESS 2005, Xi an, China, December 16-18, 2005, Proceedings}, editor = {Laurence Tianruo Yang and Xingshe Zhou and Wei Zhao and Zhaohui Wu and Yian Zhu and Man Lin}, volume = {3820}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-30881-4}, } @inproceedings{AnconaDDZ05, title = {Polymorphic bytecode: compositional compilation for Java-like languages}, author = {Davide Ancona and Ferruccio Damiani and Sophia Drossopoulou and Elena Zucca}, year = {2005}, doi = {10.1145/1040305.1040308}, url = {http://doi.acm.org/10.1145/1040305.1040308}, tags = {Java, composition}, researchr = {https://researchr.org/publication/AnconaDDZ05}, cites = {0}, citedby = {0}, pages = {26-37}, booktitle = {Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005, Long Beach, California, USA, January 12-14, 2005}, editor = {Jens Palsberg and Martín Abadi}, publisher = {ACM}, isbn = {1-58113-830-X}, } @inproceedings{OderskyZ2005, title = {Independently extensible solutions to the expression problem}, author = {Martin Odersky and M. Zenger}, year = {2005}, researchr = {https://researchr.org/publication/OderskyZ2005}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the Twelth International Workshop on Foundations of Object-Oriented Languages (FOOL 12)}, } @inproceedings{Kiselyov10-0, title = {Typed Tagless Final Interpreters}, author = {Oleg Kiselyov}, year = {2010}, doi = {10.1007/978-3-642-32202-0_3}, url = {http://dx.doi.org/10.1007/978-3-642-32202-0_3}, researchr = {https://researchr.org/publication/Kiselyov10-0}, cites = {0}, citedby = {0}, pages = {130-174}, booktitle = {Generic and Indexed Programming - International Spring School, SSGIP 2010, Oxford, UK, March 22-26, 2010, Revised Lectures}, editor = {Jeremy Gibbons}, volume = {7470}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-32201-3}, } @inproceedings{Chambers02, title = {Staged compilation}, author = {Craig Chambers}, year = {2002}, doi = {10.1145/503032.503045}, url = {http://doi.acm.org/10.1145/503032.503045}, tags = {compilation, staged compilation}, researchr = {https://researchr.org/publication/Chambers02}, cites = {0}, citedby = {0}, pages = {1-8}, booktitle = {ASIA-PEPM}, } @inproceedings{PrivatD05:0, title = {Link-time static analysis for efficient separate compilation of object-oriented languages}, author = {Jean Privat and Roland Ducournau}, year = {2005}, doi = {10.1145/1108792.1108799}, url = {http://doi.acm.org/10.1145/1108792.1108799}, tags = {analysis, static analysis}, researchr = {https://researchr.org/publication/PrivatD05%3A0}, cites = {0}, citedby = {0}, pages = {20-27}, booktitle = {Proceedings of the 2005 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis For Software Tools and Engineering, PASTE 05, Lisbon, Portugal, September 5-6, 2005}, editor = {Michael D. Ernst and Thomas P. Jensen}, publisher = {ACM}, isbn = {1-59593-239-9}, } @techreport{SoderbergH12, title = {Incremental Evaluation of Reference Attribute Grammars using Dynamic Dependency Tracking}, author = {Emma Söderberg and Görel Hedin}, year = {2012}, researchr = {https://researchr.org/publication/SoderbergH12}, cites = {0}, citedby = {0}, institution = {Department of Computer Science, Lund University}, number = {98}, } @inproceedings{RudmikM82, title = {An Efficient Separate Compilation Strategy for Very Large Programs}, author = {Andres Rudmik and Barbara G. Moore}, year = {1982}, doi = {10.1145/800230.807004}, url = {http://doi.acm.org/10.1145/800230.807004}, researchr = {https://researchr.org/publication/RudmikM82}, cites = {0}, citedby = {0}, pages = {301-307}, booktitle = {SIGPLAN Symposium on Compiler Construction}, } @article{KaminskiKCW17, title = {Reliable and automatic composition of language extensions to C: the ableC extensible language framework}, author = {Ted Kaminski and Lucas Kramer and Travis Carlson and Eric {Van Wyk}}, year = {2017}, doi = {10.1145/3138224}, url = {http://doi.acm.org/10.1145/3138224}, researchr = {https://researchr.org/publication/KaminskiKCW17}, cites = {0}, citedby = {0}, journal = {Proceedings of the ACM on Programming Languages}, volume = {1}, number = {OOPSLA}, } @inproceedings{ErdwegR13, title = {A framework for extensible languages}, author = {Sebastian Erdweg and Felix Rieger}, year = {2013}, doi = {10.1145/2517208.2517210}, url = {http://doi.acm.org/10.1145/2517208.2517210}, researchr = {https://researchr.org/publication/ErdwegR13}, cites = {0}, citedby = {0}, pages = {3-12}, booktitle = {Generative Programming: Concepts and Experiences, GPCE'13, Indianapolis, IN, USA - October 27 - 28, 2013}, editor = {Jaakko Järvi and Christian Kästner}, publisher = {ACM}, isbn = {978-1-4503-2373-4}, } @inproceedings{SathyanathanHT17, title = {Incremental whole program optimization and compilation}, author = {Patrick W. Sathyanathan and Wenlei He and Ten H. Tzen}, year = {2017}, url = {http://dl.acm.org/citation.cfm?id=3049857}, researchr = {https://researchr.org/publication/SathyanathanHT17}, cites = {0}, citedby = {0}, pages = {221-232}, booktitle = {Proceedings of the 2017 International Symposium on Code Generation and Optimization, CGO 2017, Austin, TX, USA, February 4-8, 2017}, editor = {Vijay Janapa Reddi and Aaron Smith and Lingjia Tang}, publisher = {ACM}, isbn = {978-1-5090-4931-8}, } @inproceedings{WangO16-0, title = {The expression problem, trivially!}, author = {Yanlin Wang and Bruno C. D. S. Oliveira}, year = {2016}, doi = {10.1145/2889443.2889448}, url = {http://doi.acm.org/10.1145/2889443.2889448}, researchr = {https://researchr.org/publication/WangO16-0}, cites = {0}, citedby = {0}, pages = {37-41}, booktitle = {Proceedings of the 15th International Conference on Modularity, MODULARITY 2016, Málaga, Spain, March 14 - 18, 2016}, editor = {Lidia Fuentes and Don S. Batory and Krzysztof Czarnecki}, publisher = {ACM}, isbn = {978-1-4503-3995-7}, } @inproceedings{RyanCM66, title = {A conversational system for incremental compilation and execution in a time-sharing environment}, author = {James L. Ryan and Richard L. Crandall and Marion C. Medwedeff}, year = {1966}, doi = {10.1145/1464291.1464293}, url = {http://doi.acm.org/10.1145/1464291.1464293}, researchr = {https://researchr.org/publication/RyanCM66}, cites = {0}, citedby = {0}, pages = {1-21}, booktitle = {American Federation of Information Processing Societies: Proceedings of the AFIPS '66 Fall Joint Computer Conference, November 7-10, 1966, San Francisco, California, USA}, volume = {29}, series = {AFIPS Conference Proceedings}, publisher = {AFIPS / ACM / Spartan Books, Washington D.C.}, } @article{MokhovMJ18, title = {Build systems à la carte}, author = {Andrey Mokhov and Neil Mitchell and Simon L. Peyton Jones}, year = {2018}, month = {7}, doi = {10.1145/3236774}, url = {https://doi.org/10.1145/3236774}, researchr = {https://researchr.org/publication/MokhovMJ18}, cites = {0}, citedby = {0}, journal = {Proceedings of the ACM on Programming Languages}, volume = {2}, number = {ICFP}, } @article{BrandK07, title = {ATerms for manipulation and exchange of structured data: It's all about sharing}, author = {Mark G. J. van den Brand and Paul Klint}, year = {2007}, doi = {10.1016/j.infsof.2006.08.009}, url = {http://dx.doi.org/10.1016/j.infsof.2006.08.009}, tags = {data-flow}, researchr = {https://researchr.org/publication/BrandK07}, cites = {1}, citedby = {0}, journal = {Information \& Software Technology}, volume = {49}, number = {1}, pages = {55-64}, } @inproceedings{Leroy94, title = {Manifest Types, Modules, and Separate Compilation}, author = {Xavier Leroy}, year = {1994}, doi = {10.1145/174675.176926}, researchr = {https://researchr.org/publication/Leroy94}, cites = {0}, citedby = {0}, pages = {109-122}, booktitle = {Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages}, } @inproceedings{Torgersen04, title = {The Expression Problem Revisited}, author = {Mads Torgersen}, year = {2004}, doi = {10.1007/978-3-540-24851-4_6}, url = {https://doi.org/10.1007/978-3-540-24851-4_6}, tags = {expression problem}, researchr = {https://researchr.org/publication/Torgersen04}, cites = {0}, citedby = {0}, pages = {123-143}, booktitle = {ECOOP 2004 - Object-Oriented Programming, 18th European Conference, Oslo, Norway, June 14-18, 2004, Proceedings}, editor = {Martin Odersky}, volume = {3086}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-22159-X}, }