Modeling an Algebraic Stepper. - John Clements; Matthew Flatt; Matthias Felleisen (ESOP, 2001)

Termination in Language-based Systems. - Algis Rudys; John Clements; Dan S. Wallach (NDSS, 2001)

DrScheme: a programming environment for Scheme. - Robert Bruce Findler; John Clements; Cormac Flanagan; Matthew Flatt; Shriram Krishnamurthi; Paul Steckler; Matthias Felleisen (J. Funct. Program., 2002)

A Tail-Recursive Semantics for Stack Inspections. - John Clements; Matthias Felleisen (ESOP, 2003)

A tail-recursive machine with stack inspection. - John Clements; Matthias Felleisen (ACM Trans. Program. Lang. Syst., 2004)

Laziness without all the hard work: combining lazy and strict languages for teaching. - Eli Barzilay; John Clements (FDPE@ICFP, 2005)

Continuations from generalized stack inspection. - Greg Pettyjohn; John Clements; Joe Marshall; Shriram Krishnamurthi; Matthias Felleisen (ICFP, 2005)

TeachScheme, ReachJava!: tutorial presentation. - John Clements (J. Comput. Sci. Coll., 2008)

Implications of integrating test-driven development into CS1/CS2 curricula. - Chetan Desai; David S. Janzen; John Clements (SIGCSE, 2009)

Overcoming Obstacles to Test-Driven Learning on Day One. - John Clements; David S. Janzen (ICST Workshops, 2010)

"Little language" project modules. - John Clements; Kathi Fisler (J. Funct. Program., 2010)

Supporting introductory test-driven labs with WebIDE. - Thomas Dvornik; David S. Janzen; John Clements; Olga Dekhtyar (CSEE&T, 2011)

From Stack Traces to Lazy Rewriting Sequences. - Stephen Chang 001; Eli Barzilay; John Clements; Matthias Felleisen (IFL, 2011)

Stepping Lazy Programs - Stephen Chang 001; John Clements; Eli Barzilay; Matthias Felleisen (CoRR, 2011)

Run your research: on the effectiveness of lightweight mechanization. - Casey Klein; John Clements; Christos Dimoulas; Carl Eastlund; Matthias Felleisen; Matthew Flatt; Jay A. McCarthy; Jon Rafkind; Sam Tobin-Hochstadt; Robert Bruce Findler (POPL, 2012)

Improving first-year success and retention through interest-based CS0 courses. - Michael Haungs; Christopher Clark; John Clements; David S. Janzen (SIGCSE, 2012)

An evaluation of interactive test-driven labs with WebIDE in CS0. - David S. Janzen; John Clements; Michael Hilton (ICSE, 2013)

Generating 56-bit passwords using Markov Models (and Charles Dickens). - John Clements (CoRR, 2015)

Dynamics of large scale networks following a merger. - John Clements; Babak Farzad; Henryk Fuks (ASONAM, 2016)

Mixed Approaches to CS0: Exploring Topic and Pedagogy Variance after Six Years of CS0. - Zoë J. Wood; John Clements; Zachary Peterson; David S. Janzen; Hugh Smith; Michael Haungs; Julie Workman; John Bellardo; Bruce DeBruhl (SIGCSE, 2018)

Before You Write Code ... Putting Data and Ethics at the Center of Introductory Computing. - Zach Rentz; John Clements; Zoë J. Wood; Aaron W. Keen (SIGCSE, 2021)

Towards a Notional Machine for Runtime Stacks and Scope: When Stacks Don't Stack Up. - John Clements; Shriram Krishnamurthi (ICER (1), 2022)