Ernest Ng
ngernest2.bsky.social
Ernest Ng
@ngernest2.bsky.social
PL/Systems PhD student at Cornell
ngernest.github.io
Reposted by Ernest Ng
hazel development, september 2020 - september 2025
October 28, 2025 at 3:45 AM
Reposted by Ernest Ng
I am thrilled to announce Velvet: a new foundational multi-modal verifier for imperative programs in Lean.

Velvet unifies execution, testing, automated and interactive proofs; and is itself proven sound.

💻 github.com/verse-lab/loom
📄 verse-lab.github.io/papers/loom-...
October 9, 2025 at 6:03 AM
Reposted by Ernest Ng
Have you been considering hosting a local PL meetup? Need a good place to start? Check out the PL Perspectives post that I wrote with Michael Greenberg and Noam Zilberstein!

blog.sigplan.org/2025/09/16/think-globally-discuss-pl-locally/
Think Globally, Discuss PL Locally
In-person meetings are hugely beneficial for academic research; they provide a venue to collaborate and connect, making our community more connected and facilitating the exchange of ideas. In addit…
blog.sigplan.org
September 24, 2025 at 2:48 PM
Reposted by Ernest Ng
Last week, we were treated to an extraordinary talk internally at @oxide.computer. It was at once an expository talk of a complicated software system and an experience talk of developing systems software in the large -- and it was far too good to keep to ourselves! oxide.computer/blog/systems...
Systems Software in the Large / Oxide
An extraordinary talk on developing systems software in the large
oxide.computer
September 18, 2025 at 5:29 PM
Reposted by Ernest Ng
This was a great talk from Will Crichton. I think Will's approach to approaching questions around language tooling and teaching is compelling, though I wonder how far the approach can scale!

youtu.be/R0dP-QR5wQo?...
youtu.be
August 30, 2025 at 1:24 PM
Reposted by Ernest Ng
doodling: lean type hierarchy
August 15, 2025 at 12:46 AM
Reposted by Ernest Ng
Choreographic λ-calculi are a hot topic. You might know models like Pirouette (POPL 2022) or Chorλ (ICTAC 2022).

But did you know researchers don't agree what the "right" semantics should even be?

Our ICFP pearl builds a tiny calculus from scratch, and shows the right semantics is... non-strict!?
July 28, 2025 at 5:26 PM
Reposted by Ernest Ng
Summer Undergraduate Internship - reposts welcome!

Are you a senior undergrad, interested in Programming Languages? Do you want to visit Canada for a paid 12-week internship?
August 6, 2025 at 7:25 PM
Reposted by Ernest Ng
Right this is how I’m going to do our ICFP talk @patrick.sirref.org! Very cool to see OCaml web components to make executable notebooks online really easy patrick.sirref.org/slipshow-x-x...
patrick.sirref.org
July 23, 2025 at 5:59 PM
Reposted by Ernest Ng
Upstate NY folks: Cornell will be hosting Upstate PL (www.cs.cornell.edu/upstate-pl/) on Thursday, August 28th. You should come if you're in the area!

Talk proposals are due August 4th, registration closes August 18th.
Upstate PL August 2025
www.cs.cornell.edu
July 10, 2025 at 6:22 PM
Reposted by Ernest Ng
Really enjoyed this talk by @harrisongoldste.in that demonstrates inventive uses of the #LeanLang InfoView enhanced by metaprogramming techniques to display real-time testing data.

#LeanProver #Metaprogramming #VSCode #PropertyTesting
June 30, 2025 at 9:14 PM
Reposted by Ernest Ng
Some more exciting news! This year we had not one, but two(!) dissertations receiving the SIGPLAN John C. Reynolds Doctoral Dissertation Award at PLDI!
The awardees are: Harrison Goldstein from the University of Pennsylvania and Rachit Nigam from Cornell University. More info ⬇️
June 28, 2025 at 3:56 AM
Reposted by Ernest Ng
Nice post on costs and benefits of formal methods, by @m-dodds.bsky.social: www.galois.com/articles/wha...
What Works (and Doesn't) Selling Formal Methods
www.galois.com
June 25, 2025 at 9:01 PM
Reposted by Ernest Ng
You can try Janestreet's #OCaml with modes in your browser at patrick.sirref.org/oxcaml
Try OxCaml
An OCaml toplevel supporting Janestreet's Modes
patrick.sirref.org
May 9, 2025 at 1:58 PM
Reposted by Ernest Ng
If you are considering applying for a PhD this Fall, please get in touch. I’m looking for students who are interested in PL, SE, and/or HCI — and ideally all three! You can find more information about me and my work on my website: harrisongoldste.in
Harrison Goldstein
harrisongoldste.in
May 7, 2025 at 6:38 PM
Reposted by Ernest Ng
I'm incredibly excited to announce that I've accepted a tenure-track position as an assistant professor at the University at Buffalo!

The PL/SE group at UB is already really impressive, and I am honored to be part of its continued growth
May 7, 2025 at 6:38 PM
Reposted by Ernest Ng
I wrote up a quick post about the OCaml to Hazel transpiler I've been hacking on recently. Reusing OCaml's type inference to handle Hazel's explicit polymorphism has been pretty fun!

patrick.sirref.org/hazel-of-ocaml
patrick.sirref.org
May 4, 2025 at 12:37 PM
Reposted by Ernest Ng
Next week at ESOP 2025 (European Symposium on Programming) in Hamilton, ON (not in Europe) I'll be giving a talk on Stratified Type Theory! (Tue 6 May 10:30 am)
We replace stratified type universes with stratified judgements, and restrict dependent function domains to strictly smaller levels.
Stratified Type Theory
A hierarchy of type universes is a rudimentary ingredient in the type theories of many proof assistants to prevent the logical inconsistency resulting from combining dependent functions and the type-i...
arxiv.org
April 29, 2025 at 3:23 PM
Reposted by Ernest Ng
new book on session types just dropped!

www.cambridge.org/us/universit...
Session Types | Programming languages and applied logic
www.cambridge.org
April 3, 2025 at 3:54 PM
Reposted by Ernest Ng
In 2023 I curated a 100 year timeline about hardware implementations of functional programming languages. Best viewed on a desktop or laptop screen. I occasionally add to it.

haflang.github.io/history.html
HAFLANG - A History of Functional Hardware
haflang.github.io
March 29, 2025 at 10:43 AM
Reposted by Ernest Ng
March 26, 2025 at 7:35 PM
Reposted by Ernest Ng
Calling for Presentations!

Higher-order, Typed, Inferred, Strict:
The 2025 ML Family Workshop welcomes presentations on any topic related to programming languages in the ML family (such as SML, OCaml, F#, etc.)

Submissions due: June 19 AoE
Workshop: Oct 16

conf.researchr.org/home/icfp-sp...
ML Family Workshop 2025 - Higher-order, Typed, Inferred, Strict: ML Family Workshop 2025 - ICFP/SPLASH 2025
ML is a large family of programming languages that includes Standard ML, OCaml, F#, CakeML, SML#, Manticore, MetaOCaml, JoCaml, Alice ML, Dependent ML, Flow Caml, Reason ML, Flix, MaPLe, and many othe...
conf.researchr.org
March 16, 2025 at 3:53 PM
Reposted by Ernest Ng
Great work from @tarides.com folks on pragmatic verification of OCaml software.

Chosen as one of the distinguished papers at TACAS 2025.

Paper: janmidtgaard.dk/papers/Huber...
Code: discuss.ocaml.org/t/ann-ortac-...
March 10, 2025 at 4:18 AM
Reposted by Ernest Ng
I'm writing a new blog series on practical implementation of substructural type systems, in Idris!

The first blog post will look at substructural polymorphism and why it's *hard*, harder than people assume on first glance!

zanzix.github.io/posts/5-subs...
Compiler Engineering for Substructural Languages I: The Problem with Polymorphism
Can a correct-by-construction implementation of a substructural language be extended to a polymorphic lambda calculus?
zanzix.github.io
February 17, 2025 at 2:13 PM