About me
Email: eyn5@cs.cornell.edu
GitHub: ngernest
Hi! I’m a Computer Science PhD student at Cornell, advised by Adrian Sampson in the Capra lab. My research interests are broadly in programming languages, systems and computer architecture.
I’m currently working on two projects:
- (With collaborators at Cornell) A DSL for specifying hardware communication protocols
- (With collaborators at AWS, Buffalo and Maryland) New abstractions for property-based testing (PBT) generators in Lean
I’ve interned twice with the AWS Automated Reasoning Group in Boston, working on PBT infrastructure in Lean. I did my undergrad at Penn, where I worked on PBT research, advised by Harry Goldstein & Benjamin Pierce in the PLClub (Penn’s PL group). Before grad school, I worked in industry for a year as a data engineer.
Outside of CS, I enjoy playing the pipe organ! I study organ performance with Annette Richards and Amanda Mole.
Here’s my resume and a list of projects I’ve done.
Research
-
Underpinning Property-Based Testing
Ernest Ng, Segev Elazar Mittelman, Joshua M. Cohen, Katherine Hough, Michael Hicks, Harrison Goldstein
Under submission -
Compiling Imperative Hardware Protocol Specifications to Hardware
Nikil V. Shyamsunder, Ernest Ng, Adrian Sampson, Kevin Laeufer
Under submission -
Specifying Hardware Communication as Programs
Ernest Ng, Nikil V. Shyamsunder, Francis Pham, Adrian Sampson, Kevin Laeufer
Under submission [arXiv] [Code]
An early version of this work appeared at YArch @ ISCA ’26 [Poster] -
Mica: Automated Differential Testing for OCaml Modules
Ernest Ng, Harrison Goldstein, Benjamin C. Pierce
OCaml Workshop 2024 [Slides] [Talk Video] [Code]
Received 2nd place at the ICFP 2023 SRC (poster)
Invited Talks and Presentations
-
Specifying Hardware Communication as Programs (slides)
- MIT FLAME Lab Seminar, July 2026
- YArch (Young Architect Workshop) @ ISCA ’26, June 2026
- EPFL Programming Languages & Formal Methods Seminar, May 2026
- NJPLS (New Jersey Programming Languages & Systems Seminar), May 2026
-
Chamelean: Property-Based Testing for Lean via Metaprogramming (slides) (Work done at AWS)
- Cornell Programming Languages Seminar, September 2025
-
Mica: Automated Differential Testing for OCaml Modules (slides)
- Bloomberg OCaml Developers Seminar, September 2024
- OCaml Workshop @ ICFP ’24, September 2024
- ICFP ’23 Student Research Competition, September 2023
Other
Have we met before? I’d love to hear from you! I was at the following:
| Conferences | Workshops | Summer schools |
|---|---|---|
|
|
|
Teaching
I’ve served as a teaching assistant for the following courses:
Cornell:
Penn:
- CIS 3800: Operating Systems (Fall 2023)
- Software Foundations Rocq seminar (for Penn’s REPL summer research program) (Summer 2023)
- CIS 1904/1940: Introduction to Haskell (Spring 2023)
- CIS 2400: Computer Systems (Fall 2022)
- CIS 5450: Big Data Analytics (Spring - Fall 2022, Head TA for the Fall)
- CIS 5500: Databases (Summer 2022)