% Yannis's publications %THESIS @phdthesis{ phd, author = "Yannis Smaragdakis", title = "Implementing Large-Scale Object-Oriented Components", school = "University of Texas at Austin", address = "Department of Computer Sciences", month = dec, year = 1999 } %JOURNAL @article{ layersTosem, title = "Mixin Layers: An Object-Oriented Implementation Technique for Refinements and Collaboration-Based Designs", author = "Yannis Smaragdakis and Don Batory", journal = "{ACM} Transactions on Software Engineering and Methodologies ({TOSEM})", volume = 11, number = 2, month = apr, year = 2002, pages = "215--255" } @article{fcpp-spe, title = "{FC++}: Functional Tools for {OO} Tasks", author = "Yannis Smaragdakis and Brian McNamara", journal = "Software---Practice and Experience", volume = 32, number = 10, year = 2002, pages = "1015--1033", publisher = "John Wiley and Sons" } @article{fcpp-jfp, title = "Functional Programming with the {FC++} Library", author = "Brian McNamara and Yannis Smaragdakis", journal = "Journal of Functional Programming", volume = 14, number = 4, year = 2004, month = Jul, pages = "429--472", publisher = "Cambridge University Press" } @article{eelru-pe, author = "Yannis Smaragdakis and Scott F. Kaplan and Paul R. Wilson", title = "The {EELRU} Adaptive Replacement Algorithm", journal = "Performance Evaluation", volume = 53, number = 2, month = jul, year = 2003, pages = "93--123", publisher = "Elsevier" } @article{tracered-tomacs, author = "Scott F. Kaplan and Yannis Smaragdakis and Paul R. Wilson", title = "Flexible Reference Trace Reduction for {VM} Simulations", journal = "{ACM} Transactions on Modeling and Computer Simulation ({TOMACS})", volume = 13, Number = 1, Pages = {1-38}, Month = Jan, year = 2003 } @article{jcrasher-spe, title = "{JCrasher}: An Automatic Robustness Tester for {J}ava", author = "Christoph Csallner and Yannis Smaragdakis", journal = "Software---Practice and Experience", publisher = "John Wiley and Sons", pages = "1025--1050", volume = 34, number = 11, month = sep, year = 2004 } @article{jorchestra-kimura, title = "Automatic Partitioning for Prototyping Ubiquitous Computing Applications", author = "Nikitas Liogkas and Blair MacIntyre and Elizabeth Mynatt and Yannis Smaragdakis and Eli Tilevich and Stephen Voida", journal = "{IEEE} Pervasive Computing", volume = 3, number = 3, year = 2004, month = Jul, pages = "40--47" } % BOOK @article{ generatorsSurvey, title = "Application Generators", author = "Yannis Smaragdakis and Don Batory", journal = "Encyclopedia of Electrical and Electronics Engineering", year = 2000, note = "J.G. Webster (ed.), John Wiley and Sons" } @inproceedings{ generatorsOutlook, title = "A Personal Outlook on Generator Research", author = "Yannis Smaragdakis", booktitle = "Domain-Specific Program Generation", publisher = "Springer-Verlag", editor = "C. Lengauer and D. Batory and C. Consel and M. Odersky", year = 2004, note = "{LNCS} 3016" } % CONFERENCES @inproceedings{ distil, author = "Yannis Smaragdakis and Don Batory", title = "{DiSTiL}: {A} Transformation Library for Data Structures", booktitle = "Domain-Specific Languages ({DSL}) Conference", year = 1997, pages = "257--270", url = "citeseer.nj.nec.com/smaragdakis97distil.html" } @inproceedings{ jts, author = "Don Batory and Bernie Lofaso and Yannis Smaragdakis", title = "{JTS}: tools for implementing domain-specific languages", booktitle = "Proceedings Fifth International Conference on Software Reuse", publisher = "IEEE", address = "Victoria, BC, Canada", pages = "143--153", year = "1998", url = "citeseer.nj.nec.com/171171.html" } @inproceedings{ reusableicsr, author = "Yannis Smaragdakis and Don Batory", title = "Implementing Reusable Object-Oriented Components", booktitle = "5th International Conference on Software Reuse", address = "Victoria, Canada", year = "1998", pages = "36--45", url = "citeseer.nj.nec.com/article/smaragdakis98implementing.html" } @inproceedings{ mixinlayers, author = "Yannis Smaragdakis and Don Batory", title = "Implementing Layered Designs with Mixin Layers", booktitle = "Proceedings of the European Conference on Object-Oriented Programming ({ECOOP})", publisher = "Springer-Verlag LNCS 1445", pages = "550--570", year = "1998", url = "citeseer.nj.nec.com/smaragdakis98implementing.html" } @inproceedings{ archstyles, title = "Architectural Styles As Adaptors", author = "Don Batory and Yannis Smaragdakis and Lou Coglianese", booktitle = "First Working Conference on Software Architecture", year = 1999, month = feb, location = {San Antonio, Texas} } @inproceedings{tracered, author = "Scott F. Kaplan and Yannis Smaragdakis and Paul R. Wilson", title = "Trace Reduction for Virtual Memory Simulations", booktitle = "{ACM} {SIGMETRICS} Conference on Measurement and Modeling of Computer Systems", year = 1999, pages = {47--58}, } @inproceedings{eelru, author = "Yannis Smaragdakis and Scott F. Kaplan and Paul R. Wilson", title = "{EELRU}: Simple and Efficient Adaptive Page Replacement", booktitle = "{ACM} {SIGMETRICS} Conference on Measurement and Modeling of Computer Systems", year = 1999, pages = {122--133}, } @inproceedings{compressedvm, title = "The Case for Compressed Caching in Virtual Memory Systems", author = "Paul R. Wilson and Scott F. Kaplan and Yannis Smaragdakis", booktitle = "Proceedings of The 1999 USENIX Annual Technical Conference", pages = {101--116}, year = 1999 } @inproceedings{ generationscoping, author = "Yannis Smaragdakis and Don Batory", title = "Scoping Constructs for Program Generators", booktitle = "Generative and Component-Based Software Engineering Symposium ({GCSE})", pages = {65--78}, year = 1999, note = "Earlier version in Technical Report UTCS-TR-96-37", publisher = "Springer-Verlag, {LNCS} 1799" } @inproceedings{ productlines, title = "Object-Oriented Frameworks and Product Lines", author = "Don Batory and Richard Cardone and Yannis Smaragdakis", booktitle = "1st Software Product-Lines Conference ({SPLC1})", year = 2000 } @inproceedings{modem, author = "Yannis Smaragdakis and Paul Wilson", title = "Performing Replacement in Modem Pools", booktitle = "Proceedings of The {USENIX} Annual Technical Conference", year = 2000, pages = "277--292" } @inproceedings{ fcppicfp, author = "Brian McNamara and Yannis Smaragdakis", title = "Functional programming in {C++}", booktitle = "International Conference on Functional Programming ({ICFP})", publisher = "{ACM} {SIGPLAN} Notices, 35(9)", pages = "118--129", year = "2000", url = "citeseer.nj.nec.com/mcnamara00functional.html" } @inproceedings{ mixinbased, author = "Yannis Smaragdakis and Don Batory", title = "Mixin-Based Programming in {C++}", booktitle = "Generative and Component-Based Software Engineering Symposium ({GCSE})", year = 2000, pages = "163--177", publisher = "Springer-Verlag, {LNCS} 2177" } @inproceedings{ layered-dll, title = "Layered Development with ({Unix}) Dynamic Libraries", author = "Yannis Smaragdakis", booktitle = "7th International Conference on Software Reuse ({ICSR} `02)", year = 2002, month = apr, note = "{LNCS} 2319", publisher = "Springer-Verlag", pages = "33--45" } @inproceedings{ jorchestra, author = "Eli Tilevich and Yannis Smaragdakis", title = "{J-Orchestra}: Automatic {Java} Application Partitioning", booktitle = "Proceedings of the European Conference on Object-Oriented Programming ({ECOOP})", publisher = "Springer-Verlag, {LNCS} 2374", pages = "178--204", year = "2002" } @inproceedings{ nrmi, title = "{NRMI}: Natural and Efficient Middleware", author = "Eli Tilevich and Yannis Smaragdakis", booktitle = "International Conference on Distributed Computer Systems ({ICDCS})", year = 2003, pages = "252--261" } @inproceedings{ gotech, author = "Eli Tilevich and Stephan Urbanski and Yannis Smaragdakis and Marc Fleury", title = "Aspectizing Server-Side Distribution", booktitle = "Proceedings of the Automated Software Engineering ({ASE}) Conference", publisher = "IEEE Press", year = "2003", month = "October", pages = "130--141" } @inproceedings{maj, author = "David Zook and Shan Shan Huang and Yannis Smaragdakis", title = "Generating {AspectJ} Programs with Meta-{AspectJ}", booktitle = "Generative Programming and Component Engineering ({GPCE})", publisher = "Springer-Verlag", year = 2004, month = "October", pages = "1--18" } @inproceedings{dist-synch, title = "Portable and Efficient Distributed Threads for {J}ava", author = "Eli Tilevich and Yannis Smaragdakis", booktitle = "{ACM} {M}iddleware Conference", year = 2004, month = Oct, publisher = "Springer-Verlag", pages = "478--492" } @inproceedings{adaptive-ismm, title = "General Adaptive Replacement Policies", author = "Yannis Smaragdakis", booktitle = "International Symposium on Memory Management ({ISMM})", publisher = "ACM Press", year = 2004, month = oct, pages = "108--119" } @inproceedings{generators-pepm, title = "Program Generators and the Tools to Make them", author = "Yannis Smaragdakis and Shan Shan Huang and David Zook", booktitle = "{ACM SIGPLAN} Symposium on Partial Evaluation and Program Manipulation ({PEPM})", year = 2004, month = aug } @inproceedings{refactoring-icse, title = "Binary Refactoring: Improving Code Behind the Scenes", author = "Eli Tilevich and Yannis Smaragdakis", booktitle = "International Conference on Software Engineering ({ICSE})", year = 2005, month = may, pages = "264--273" } @inproceedings{cnc-icse, title = "{CnC}: Combining Static Checking and Testing", author = "Christoph Csallner and Yannis Smaragdakis", booktitle = "International Conference on Software Engineering ({ICSE})", year = 2005, month = may, pages = "422--431" } @inproceedings{safegen, title = "Statically Safe Program Generation with {SafeGen}", author = "Shan Shan Huang and David Zook and Yannis Smaragdakis", booktitle = "Generative Programming and Component Engineering ({GPCE}) Conference", year = 2005, month = sep } @inproceedings{appletizing, title = "Appletizing: Running Legacy {Java} Code Remotely From a Web Browser", author = "Eli Tilevich and Yannis Smaragdakis and Marcus Handte", booktitle = "International Conference on Software Maintenance ({ICSM})", year = 2005, month = sep } @inproceedings{maj-icse06, title = "Easy Language Extension with {Meta-AspectJ}", author = "Shan Shan Huang and Yannis Smaragdakis", booktitle = "International Conference on Software Engineering ({ICSE}), Emerging Results", year = 2006, month = may, pages = "865--868" } @inproceedings{behavioral-daikon, title = "Dynamically Discovering Likely Interface Invariants", author = "Christoph Csallner and Yannis Smaragdakis", booktitle = "International Conference on Software Engineering ({ICSE}), Emerging Results", year = 2006, month = may, pages = "861--864" } @inproceedings{daikon-cnc, title = "{DSD}-{C}rasher: A Hybrid Analysis Tool for Bug Finding", author = "Christoph Csallner and Yannis Smaragdakis", booktitle = "International Symposium on Software Testing and Analysis ({ISSTA})", year = 2006, month = jul } %OTHERS @inproceedings{ productlines-work, author = "Yannis Smaragdakis and Don Batory", title = "Building Product-Lines with Mixin-Layers", booktitle = "{ECOOP}'99 Workshop on Product-Line Architectures", year = 1999 } @inproceedings{ staticinterfaces, author = "Brian McNamara and Yannis Smaragdakis", title = "Static Interfaces in {C++}", booktitle = "{C++} Template Programming Workshop", year = 2000, month = oct } @inproceedings{ nestedinterfaces, author = "Yannis Smaragdakis", title = "Interfaces for Nested Classes", booktitle = "8th Foundations of Object-Oriented Languages workshop ({FOOL})", year = 2001, month = jan, location = {London, England} } @inproceedings{ fcpp-tmpw, title = "Functional Programming with the {FC++} Library", author = "Brian McNamara and Yannis Smaragdakis", year = 2001, booktitle = "Workshop on {C++} Template Programming" } @inproceedings{ jorchestra-mobile, title = "Automatic Application Partitioning: The {J-Orchestra} Approach", author = "Eli Tilevich and Yannis Smaragdakis", year = 2002, booktitle = "{ECOOP} 2002 Workshop on Mobile Object Systems" } @inproceedings{fcpp-monads, title = "Syntax Sugar for {FC++}: lambda, infix, monads, and more", author = "Brian McNamara and Yannis Smaragdakis", booktitle = "Declarative Programming in the Context of OO Languages ({DPCOOL}'03) at {PLI}'03", year = 2003 } @article{fcpp-notices, title = "Functional Programming in {C++} Using the {FC++} Library", author = "Brian McNamara and Yannis Smaragdakis", journal = "{ACM} {SIGPLAN} Notices", volume = 36, number = 4, pages = "25--30", year = 2001, month = apr } @book{mpool01, title = "Multiparadigm Programming with Object-Oriented Languages ({MPOOL})", editor = "Kei Davis and Yannis Smaragdakis and Joerg Striegnitz", publisher = "John Von Neumann Institute for Compting ({NIC})", year = 2001, note = "{ISBN} 3-00-007968-8" } @book{mpool02, title = "Multiparadigm Programming with Object-Oriented Languages ({MPOOL})", editor = "Joerg Striegnitz and Kei Davis and Yannis Smaragdakis", publisher = "John Von Neumann Institute for Computing ({NIC})", year = 2002, note = "{ISBN} 3-00-009099-1" } @book{gpce03, title = "Generative Programming and Component Engineering, proceedings of {GPCE}'03", editor = "Frank Pfenning and Yannis Smaragdakis", year = 2003, publisher = "Springer-Verlag, {LNCS} 2830" }