Department of Computer Science
Swarthmore College
270 Science Center
500 College Avenue
Swarthmore, PA 19081
zachary.palmer --at-- swarthmore.edu
zepalmer
I am an Assistant Professor of Computer Science at Swarthmore College. My research interests include software engineering, compile-time metaprogramming, subtype constraint theory, and related program analyses. I completed my Ph.D. in the Spring of 2015 at Johns Hopkins University, where I had the pleasure of being advised by Dr. Scott F. Smith.
Teaching
I am teaching CS35: Data Structures and Algorithms in the Fall 2024 semester. Please see the course website for more information on CS35.
Previous Courses
-
CS21: Introduction to Computer Science in the Fall 2015 semester
-
CS35: Data Structures and Algorithms in the Spring 2016, Fall 2016, Fall 2018, Fall 2019, Fall 2020, and Fall 2022 semesters
-
CS71: Software Engineering in the Fall 2017 semester
-
CS73: Programming Languages in the Spring 2018, Spring 2020, and Fall 2021 semesters
-
CS75: Compilers in the Spring 2017, Spring 2019, Spring 2021, Spring 2022, and Spring 2023 semesters
Research
My interests are in type theory, program analysis, and their application to software engineering. I am primarily working on demand-driven approaches to higher-order program analysis.
Publications
-
A Set-Based Context Model for Program Analysis, November 2020. Leandro Fachinetti, Zachary Palmer, Scott F. Smith, Ke Wu, Ayaka Yorihiro. Asian Symposium on Programming Languages and Systems (APLAS).
-
Higher-Order Demand-Driven Symbolic Evaluation, August 2020. Zachary Palmer, Theodore Park, Scott F. Smith, Shiwei Weng. International Conference on Functional Programming (ICFP).
-
Higher-Order Demand-Driven Program Analysis, July 2019. Leandro Facchinetti, Zachary Palmer, Scott F. Smith. ACM Transactions on Programming Languages and Systems (TOPLAS).
-
A Schematic Pushdown Reachability Language, November 2018. Zachary Palmer, Charlotte Raty. Domain-Specific Language Design and Implementation (DSLDI); Boston, MA, USA.
-
Relative Store Fragments for Singleton Abstraction, September 2017. (slides) Leandro Facchinetti, Zachary Palmer, Scott F. Smith. Static Analysis Symposium (SAS); New York, New York, USA.
-
Higher-Order Demand-Driven Program Analysis, July 2016. (slides) (supplement) (talk) Zachary Palmer, Scott F. Smith. European Conference on Object-Oriented Programming (ECOOP); Rome, Italy.
-
Control-Based Program Analysis (talk), November 2015. (slides) Zachary Palmer, Scott F. Smith. IBM PL Day; Yorktown Heights, New York, USA.
-
Building a Typed Scripting Language, May 2015. (slides) Zachary Palmer. Dissertation; Johns Hopkins University.
-
Types for Flexible Objects, November 2014. (slides) Pottayil Harisanker Menon, Zachary Palmer, Alexander Rozenshteyn, Scott F. Smith. Asian Symposium on Programming Languages and Systems (APLAS); Singapore. Previous drafts: (May 2013) (Jan 2014) (Mar 2014)
-
PatBang: Flexible type-safe pattern matching, September 2013. Pottayil Harisanker Menon, Zachary Palmer, Alexander Rozenshteyn, Scott F. Smith. Technical report.
-
A Practical, Typed Variant Object Model, October 2012. (slides) Pottayil Harisanker Menon, Zachary Palmer, Alexander Rozenshteyn, Scott F. Smith. Foundations of Object-Oriented Languages (FOOL); Tucson, Arizona, USA.
-
K3: Language Design for Building Multi-Platform, Domain-Specific Runtimes, September 2012. Yanif Ahmad, Zachary Palmer, Panchapakesan Shyamshankar. Workshop on Cross-model Language Design and Implementation (XLDI); Copenhagen, Denmark.
-
BigBang: Designing a Statically-Typed Scripting Language, June 2012. (slides) Pottayil Harisanker Menon, Zachary Palmer, Alexander Rozenshteyn, Scott F. Smith. International Workshop on Scripts to Programs (STOP); Beijing, China.
-
Backstage Java: Making a Difference in Metaprogramming, October 2011. (slides) Zachary Palmer, Scott F. Smith. Object Oriented Programming: Systems, Languages, and Applications (OOPSLA); Portland, Oregon, USA.