Junrui Liu
junrui-liu.bsky.social
Junrui Liu
@junrui-liu.bsky.social
CS PhD student @ UC Santa Barbara, doing program synthesis and verification
https://junrui-liu.github.io/
Well, if we're just interested in teaching the practical implications of Rice's Theorem & friends, then TMs can be completely dispensed with. Instead, use any of the equivalent models that's closer to practical languages, as exemplified by Jones' Computability and Complexity
hjemmesider.diku.dk
November 12, 2025 at 7:57 PM
Turns out I'm not alone in this (e.g., found this textbook by Jim Hefferon which I might give it a try in the near future: hefferon.net/computation/). Also looking to try a more semantic treatment of simpler models, using applications from formal methods & verification
Free Theory of Computation text from Jim Hefferon
Free Theory of Comptation Text, from Jim Hefferon
hefferon.net
November 7, 2025 at 11:15 PM
Sorry, I meant alternative instead of selective. Time to go back to OCaml…
September 27, 2025 at 5:40 PM
I had a random thought (when reading the free generator paper) that the selective applicative interface with a ”f a * f b -> f (a*b)” API instead of the usual “<*>” roughly corresponds to typed context-free expressions minus fixpoint. Might explain the expressiveness vs understandability tradeoff…
September 27, 2025 at 5:18 PM
The most enlightening explanation on subtyping I read was from Benjamin Pierce's PhD thesis. Paraphrased, subtyping is type-directed program synthesis (intersection types synthesize tuple projections, nat<int synthesizes coercions, function contra & covariance synthesize function composition)
August 11, 2025 at 6:46 PM
wow this sounds super interesting. Looking forward to reading your paper when it comes out!
August 1, 2025 at 8:27 PM
was even thinking about designing an automata theory course around this idea: regex is just like a simple imperative language with atomic print(), but with if's and while's conditions being non-deterministic. Then everything becomes "predicting what a program will print by abstracting it into regex"
June 11, 2025 at 6:37 PM
Reposted by Junrui Liu
UPDATE: I am going to offer some free online training this summer about how to create code playbacks and use them in a course. I'll show how I use code playbacks instead of textbooks and videos and share what my students think of them.

www.eventbrite.com/e/beyond-tex...
Beyond Textbooks and Videos: Creating and Sharing Code Playbacks
Join CS professor, Mark Mahoney, to hear about how he uses code playbacks in his computer science courses.
www.eventbrite.com
May 27, 2025 at 4:32 PM
Thanks for your fast response! I'll shoot an email
May 7, 2025 at 5:58 PM
Hi Prof. Friedler, I'm very interested in applying for this position, and have some questions about the application materials for which I'd really appreciate your input! However, Bluesky doesn't seem to allow me to DM you via its Chat. Would you prefer me to reach out via other channels instead?
May 7, 2025 at 5:45 PM