@article{flatt-icfp-2019,
  author = {Flatt, Matthew and Derici, Caner and Dybvig, R. Kent and Keep, Andrew W. and Massaccesi, Gustavo E. and Spall, Sarah and Tobin-Hochstadt, Sam and Zeppieri, Jon},
  title = {Rebuilding {Racket} on {Chez} {Scheme} ({Experience} {Report})},
  journal = {Proceedings of the ACM on Programing Language},
  issue_date = {August 2019},
  volume = {3},
  number = {ICFP},
  month = August,
  year = {2019},
  issn = {2475-1421},
  pages = {78:1--78:15},
  articleno = {78},
  numpages = {15},
  url = {http://doi.acm.org/10.1145/3341642},
  doi = {10.1145/3341642},
  acmid = {3341642},
  publisher = {ACM},
  address = {New York, NY, USA},
  keywords = {Racket, Scheme},
}

@article{keep-dybvig-JFP-2014,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {A run-time representation of {Scheme} record types},
  journal = {Journal of Functional Programming},
  volume = {24},
  issue = {Special Issue 06},
  month = {11},
  year = {2014},
  issn = {1469-7653},
  pages = {675--716},
  numpages = {42},
  doi = {10.1017/S0956796814000203},
  URL = {http://journals.cambridge.org/article_S0956796814000203},
}

@unpublished{keep-hearn-dybvig-TOPLAS-2013,
  author = {Keep, Andrew W. and Hearn, Alex and Dybvig, R. Kent},
  title = {Optimizing Flat Closures},
  journal = {ACM Trans. on Program. Lang. and Syst.},
  note = {Rejected},
}

@inproceedings{liang-etal-ccs-spsm-2013,
  author = {Liang, Shuying and Keep, Andrew W. and Might, Matthew and Van Horn, David and Lyde, Steven and Gilray, Thomas and Aldous, Petey},
  title = {Sound and Precise Malware Analysis for Android via Pushdown Reachability and Entry-Point Saturation},
  booktitle = {Proceedings 3rd Annual ACM CCS Workshop on Security and Privacy in Smartphones and Mobile Devices},
  series = {SPSM '13},
  year = {2013},
  address = {New York, NY, USA},
  publisher = {ACM},
  isbn = {978-1-4503-2491-5},
  doi = {10.1145/2516760.2516769}
}

@inproceedings{liang-etal-scam-2014,
  author = {Liang, Shuying and Sun, Weibin and Might, Matthew and Keep, Andrew W. and Van Horn, David},
  title = {Pruning, Pushdown Exception-Flow Analysis},
  booktitle = {Proceedings of the 14th IEEE International Working Conference on Source Code Analysis and Manipulation},
  series = {SCAM '14},
  year = {2014},
  month = {September},
  publisher = {IEEE Computer Society},
  address = {Washington, DC, USA}
}

@inproceedings{keep-dybvig-icfp-2013,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {A Nanopass Framework for Commercial Compiler Development},
  booktitle = {Proceedings of the 18th ACM SIGPLAN International Conference on Functional Programming},
  series = {ICFP '13},
  year = {2013},
  address = {New York, NY, USA},
  publisher = {ACM},
  isbn = {978-1-4503-2326-0},
  doi = {10.1145/2500365.2500618}
}

@phdthesis{keep-phdthesis-2013,
  author = {Keep, Andrew W.},
  advisor = {Dybvig, R. Kent},
  title = {A Nanopass Framework for Commercial Compiler Development},
  year = {2013},
  month = feb,
  isbn = {978-1-303-07214-7},
  publisher = {Indiana University},
  school = {Indiana University},
  address = {Bloomington, IN},
}

@inproceedings{keep-dybvig-scheme-workshop-2013,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {Automatic Cross-Library Optimization},
  booktitle = {Proceedings of the 2013 Workshop on Scheme and Functional Programming},
  series = {Scheme '13},
  year = {2013},
}

@inproceedings{keep-hearn-scheme-workshop-2012,
  author = {Keep, Andrew W. and Hearn, Alex and Dybvig, R. Kent},
  title = {Optimizing Closures in {O}(0)-time},
  booktitle = {Proceedings of the 2012 Workshop on Scheme and Functional Programming},
  series = {Scheme '12},
  year = {2012},
}

@inproceedings{keep-scheme-workshop-2012,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {A Sufficiently Smart Compiler for Procedural Records},
  booktitle = {Proceedings of the 2012 Workshop on Scheme and Functional Programming},
  series = {Scheme '12},
  year = {2012},
}

@inproceedings{adams-cfa-2011,
  author = {Adams, Michael D. and Keep, Andrew W. and Midtgaard, Jan and Might, Matthew and Chauhan, Arun and Dybvig, R. Kent},
  title = {Flow-Sensitive Sub-Zero Control-Flow Analysis in Linear-Log Time},
  booktitle = {Proceedings of the 2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications},
  pages = {483--498},
  year = {2011},
  series = {OOPSLA '11},
  address = {New York, NY, USA},
  publisher = {ACM},
  isbn = {978-1-4503-0940-0},
  doi = {10.1145/2048066.2048105},
}

@inproceedings{keep-scheme-workshop-2011,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {Ftypes: Structured foreign types},
  booktitle = {Proceedings of the 2011 Workshop on Scheme and Functional Programming},
  series = {Scheme '11},
  year = {2011},
}

@inproceedings{keep-scheme-workshop-2010,
  author = {Keep, Andrew W. and Dybvig, R. Kent},
  title = {Enabling cross-library optimization and compile-time error checking in the presence of procedural macros},
  booktitle = {Proceedings of the 2010 Workshop on Scheme and Functional Programming},
  series = {Scheme '10},
  year = {2010},
  pages = {66--76},
}

@inproceedings{keep-scheme-workshop-2009,
  author = {Keep, Andrew W. and Adams, Michael D. and Kuper, Lindsey and Byrd, William E. and Friedman, Daniel P.},
  title = {A pattern matcher for {miniKanren} or How to get into trouble with {CPS} macros},
  booktitle = {Proceedings of the 2009 Scheme and Functional Programming Workshop},
  series = {Scheme '09},
  pages = {37--45},
  year = {2009},
  number = {CPSLO-CSC-09-03},
  series = {California Polytechnic State University Technical Report},
  url = {http://digitalcommons.calpoly.edu/csse_fac/83/},
}

@inproceedings{keep-eScience-2008,
  author = {Keep, Andrew and Chauhan, Arun},
  title = {Concrete Partial Evaluation in {Ruby}},
  booktitle = {Proceedings of the 2008 Fourth IEEE International Conference on eScience},
  series = {ESCIENCE '08},
  year = {2008},
  isbn = {978-0-7695-3535-7},
  pages = {346--347},
  doi = {http://dx.doi.org/10.1109/eScience.2008.141},
  publisher = {IEEE Computer Society},
  address = {Washington, DC, USA},
}

@techreport{chauhan-2013-rubywrite,
  author = {Chauhan, Arun and Keep, Andrew and Shei, Chun-Yu and Ratnalikar, Pushkar},
  title = {{RubyWrite}: An Embedded {DSL} for Tree Rewriting},
  number = {TR704},
  institution = {Indiana University},
  address = {Bloomington, IN},
  month = {February},
  year = {2013},
}

@misc{keep-etal-nanopass-framework,
  author = {Keep, Andrew W. and Sarkar, Dipanwita and Dybvig, R. Kent and Waddell, Oscar},
  title = {Nanopass Framework},
  howpublished = {\url{https://github.com/akeep/nanopass-framework}},
  year = {2012--2014},
  note = {software},
}
