Formal techniques can help analyse programs, precisely describe program behaviour, and verify program properties. Modern programming languages (such as C#, Java, Kotlin, Rust, or Scala) are interesting targets for formal techniques due to their ubiquity and wide user base, stable and well-defined interfaces and platforms, and powerful (but also complex) libraries. New languages and applications in this space are continually arising, resulting in new programming languages research challenges.
Work on formal techniques and tools and on the formal underpinnings of programming languages themselves naturally complement each other.
The Formal Techniques for Judicious Programming (FTfJP) workshop is an established workshop which has run annually since 1999 alongside ECOOP, with the goal of bringing together people working in both fields.
In 2002 the name of the workshop was changed slightly - from “Formal Techniques for Java Programs” to “Formal Techniques for Java-like Programs” - to include not just work on Java, but also work on related languages such as C# or Scala.
In 2024 the name of the workshop was changed from “Formal Techniques for Java-like Programs” to “Formal Techniques for Judicious Programming” to properly reflect the broader scope of the workshop.
Example topics of interest include:
- Language design and semantics
- Type systems
- Concurrency and new application domains
- Specification and verification of program properties
- Program analysis (static or dynamic)
- Program synthesis
- Security
- Applications of artificial intelligence and large language models in formal methods
- Formal methods for artificial intelligence and large language models
- Pearls (programs or proofs)
- Industrial case studies and experience reports
FTfJP welcomes submissions on technical contributions, case studies, experience reports, challenge proposals, tools, and position papers.
Keynote Speakers
Bart Jacobs (KU Leuven)
Bio: Bart Jacobs is an Associate Professor at KU Leuven. He has published on modular verification of safety and liveness of fine-grained concurrency, I/O, deadlock-freedom of programs using channels and monitors, prophecy variables, termination of object-oriented programs, safety and liveness of exception handling, and unloadable modules, among other topics. He is also the main developer of the VeriFast tool for separation-logic-based modular verification of single-threaded and multithreaded C, Java, and Rust programs.
Title: Expressive Modular Verification of Termination of Busy-Waiting Programs and Deadlock-Freedom of Primitive Blocking Programs
Abstract: I present recent work on the expressive specification and verification of termination of busy-waiting modules under a fair scheduler, as well as ongoing work on the expressive specification and verification of deadlock-freedom of programs that use blocking primitives such as futexes (under any scheduler). The specifications are expressive in that they support a wide variety of client scenarios, such as where a client acquires a lock in one thread and releases it in another, as seen in “cohort lock” implementations. I will point out the core shared idea underlying both approaches, as well as their differences.
Julien Lange (Royal Holloway, University of London)
TBD
Call for Papers
Paper categories
We solicit two categories of papers:
- Full Papers (12 pages, excluding references) present a technical contribution, case study, or detailed experience report. We welcome both complete and incomplete technical results; ongoing work is particularly welcome, provided it is substantial enough to stimulate interesting discussions.
- Short Papers (6 pages, excluding references) should advocate a promising research direction, or otherwise present a position likely to stimulate discussion at the workshop. We encourage e.g. established researchers to set out a personal vision, and beginning researchers to present a planned path to a PhD.
Both types of contributions will benefit from feedback received at the workshop. Submissions will be peer reviewed and will be evaluated based on their clarity and their potential to generate interesting discussions. Reviewing will be single blind, i.e, submissions need not be anonymized.
The format of the workshop encourages interaction. FTfJP is a forum in which a wide range of people share their expertise, including experienced researchers, industry practitioners, and early-stage PhD students.
Submission guidelines
Papers must be formatted according to the guidelines for ACM sigplan papers (\documentclass[sigplan,screen]{acmart}), see https://www.sigplan.org/Resources/Author/ for details. Submissions should be made via Easychair (https://easychair.org/conferences?conf=ftfjp2026). There is no need to indicate the paper category (long/short).
The accepted papers will be published in the ACM Digital Library, though authors will be able to opt out of this publication, if desired. At least one author of an accepted paper must register to the workshop by the early registration date and attend the workshop to present the work and participate in the discussions.
Lightning talks
In addition to papers, we also invite lightning talks (~10 minutes) on topics related to the workshop goals that allow participants to present preliminary work in academia and industry. Examples include but not limited to
- Proposing a research problem/challenge
- Presenting a tool/demo
- Presenting a short summary of a work already published elsewhere
Submission information will be announced closer to the workshop, but we plan it to be a lightweight process (e.g. title/abstract submission via Google Form).
Important dates
- Submission deadline: 25th February, 2026
- Notification: 1st April, 2026
- Camera ready: 30th April, 2026
- Workshop: 30th June, 2026