~/talk

LiquidJava:Catch Bugs at Compile Time with Liquid Types

Talkat JNation 2026 · 2026-05-26..05-27· [java]
links:none on file
links:none on file
slides:none on file

LiquidJava extends Java types with refinement predicates so the compiler proves properties like “height > 0” and object protocol states (cannot write after close) using an SMT solver, a research prototype implementation and a VS Code extension. Live demos show it finds real defects (a StackOverflow example) and it already surfaces two bugs found in open-source projects. Verification is fast on small modules and supports modular rechecking, but it lacks concurrency/randomized-value reasoning, and hasn’t been validated on large enterprise codebases or Kotlin/IntelliJ workflows.

AI-written summary · about

  1. 0:00Introduction to LiquidJava
  2. 1:50How Liquid Types Work
  3. 3:15Simple Refinement Examples
  4. 4:38Refining Methods and Returns
  5. 7:09Object Protocols for Sockets
  6. 9:35Debugging the First Bug
  7. 11:46Real-World Use Cases
  8. 13:50Future of LiquidJava
  9. 15:13Call to Action and Feedback
  10. 16:49Q&A Session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.