<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://fplaunchpad.org/feed.xml" rel="self" type="application/atom+xml" /><link href="https://fplaunchpad.org/" rel="alternate" type="text/html" /><updated>2026-04-06T13:17:47+00:00</updated><id>https://fplaunchpad.org/feed.xml</id><title type="html">FP Launchpad</title><subtitle>Centre for Functional Systems Research and Education at IIT Madras</subtitle><entry><title type="html">Talk: Agentic Proof-oriented Programming — Nik Swamy</title><link href="https://fplaunchpad.org/2026/04/03/nik-swamy-agentic-proof-oriented-programming.html" rel="alternate" type="text/html" title="Talk: Agentic Proof-oriented Programming — Nik Swamy" /><published>2026-04-03T00:00:00+00:00</published><updated>2026-04-03T00:00:00+00:00</updated><id>https://fplaunchpad.org/2026/04/03/nik-swamy-agentic-proof-oriented-programming</id><content type="html" xml:base="https://fplaunchpad.org/2026/04/03/nik-swamy-agentic-proof-oriented-programming.html"><![CDATA[<p><strong>Speaker:</strong> <a href="https://www.microsoft.com/en-us/research/people/nswamy/">Nik Swamy</a> — Partner Researcher, <a href="https://www.microsoft.com/en-us/research/group/research-in-software-engineering-rise/">RiSE group</a>, Microsoft Research, Redmond</p>

<p><strong>Date:</strong> Tuesday, April 7, 2026, 11:00 AM – 12:00 PM IST</p>

<p><strong>Venue:</strong> SSB 334, Department of CSE, IIT Madras</p>

<h2 id="abstract">Abstract</h2>

<p>Can AI assist in building programs with formal proofs of correctness? My recent experience using <a href="https://github.com/features/copilot/cli">Copilot CLI</a> to develop programs with proofs in <a href="https://fstar-lang.org/">F*</a> and <a href="https://fstar-lang.org/tutorial/book/pulse/pulse.html">Pulse</a> has been eye opening. In just the past few weeks, working with agents, I have programmed nearly 200 KLOC of verified code and proofs in a variety of contexts, ranging from concurrent data structures, formalizations of classic algorithms textbooks, porting a <a href="https://github.com/FStarLang/pulse-verified-gc">verified garbage collector</a> from FP Launchpad, and even some proofs of production C code at Microsoft.</p>

<p>I will speak about my experience and offer some tools and techniques for others to try out similar AI-assisted proof-oriented programming tasks using a fresh consolidated release of F* and related tools, coupled with <a href="https://github.com/FStarLang/proof-copilot">proof-copilot</a>, agentic tools for proof-oriented programming.</p>

<p>While AI-assistance offers many new opportunities for program proof, I will also offer some thoughts about the many challenges it poses.</p>

<h2 id="bio">Bio</h2>

<p>Nik Swamy is a Partner Researcher in the <a href="https://www.microsoft.com/en-us/research/group/research-in-software-engineering-rise/">RiSE group</a> at MSR Redmond. His work covers various topics including type systems, functional programming, program proof, and theorem proving. He often thinks about how to use these techniques to build provably correct and secure programs, often in the context of systems software. Most of his work builds on <a href="https://fstar-lang.org/">F*</a>, a proof-oriented programming language for higher order, effectful programs.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[Speaker: Nik Swamy — Partner Researcher, RiSE group, Microsoft Research, Redmond]]></summary></entry><entry><title type="html">Call for Papers: PROPL 2026 — Programming for the Planet (PLDI 2026 Workshop)</title><link href="https://fplaunchpad.org/2026/04/02/propl-2026.html" rel="alternate" type="text/html" title="Call for Papers: PROPL 2026 — Programming for the Planet (PLDI 2026 Workshop)" /><published>2026-04-02T00:00:00+00:00</published><updated>2026-04-02T00:00:00+00:00</updated><id>https://fplaunchpad.org/2026/04/02/propl-2026</id><content type="html" xml:base="https://fplaunchpad.org/2026/04/02/propl-2026.html"><![CDATA[<p><a href="https://pldi26.sigplan.org/home/propl-2026">PROPL 2026</a> (Programming for the Planet) is an open working meeting co-located with <a href="https://pldi26.sigplan.org/">PLDI 2026</a> in Boulder, Colorado (June 15–19, 2026). The workshop brings together climate practitioners and computing researchers to develop requirements and technical approaches for a next-generation planetary compute engine — a large-scale system for continuous collection, processing, and analysis of Earth’s environmental data.</p>

<p>Position papers (1 page) are due <strong>April 24, 2026</strong>. See the <a href="https://pldi26.sigplan.org/home/propl-2026">workshop page</a> for details.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[PROPL 2026 (Programming for the Planet) is an open working meeting co-located with PLDI 2026 in Boulder, Colorado (June 15–19, 2026). The workshop brings together climate practitioners and computing researchers to develop requirements and technical approaches for a next-generation planetary compute engine — a large-scale system for continuous collection, processing, and analysis of Earth’s environmental data.]]></summary></entry><entry><title type="html">FP Launchpad Kickoff</title><link href="https://fplaunchpad.org/2026/03/30/fp-launchpad-kickoff.html" rel="alternate" type="text/html" title="FP Launchpad Kickoff" /><published>2026-03-30T00:00:00+00:00</published><updated>2026-03-30T00:00:00+00:00</updated><id>https://fplaunchpad.org/2026/03/30/fp-launchpad-kickoff</id><content type="html" xml:base="https://fplaunchpad.org/2026/03/30/fp-launchpad-kickoff.html"><![CDATA[<style>
.sp { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; vertical-align: middle; margin-right: 0.4rem; border: 1px solid #e0e0e0; }
</style>

<p>FP Launchpad will hold its kickoff on <strong>Monday, April 13, 2026</strong> at the <strong>IC&amp;SR Building, IIT Madras</strong>. The day-long event features talks by leading researchers from industry and academia, covering hardware design, security, formal verification, compilers, programming languages, and AI-augmented software engineering.</p>

<p>Registration and breakfast begin at 9:00 AM. The inauguration begins at 10:00 AM with welcoming remarks from Dr KC Sivaramakrishnan (Centre Head) and the Director of IIT Madras.</p>

<h2 id="schedule">Schedule</h2>

<div class="schedule-table">
<table>
  <thead>
    <tr><th>Time</th><th>Speaker</th><th>Title</th></tr>
  </thead>
  <tbody>
    <tr style="background-color: #f0f0f0;"><td>09:00 &ndash; 09:45</td><td colspan="2" style="text-align: center;"><strong>Registration + Breakfast</strong></td></tr>
    <tr><td>10:00 &ndash; 10:30</td><td><img class="sp" src="https://kcsrk.info/assets/profile.jpeg" alt="KC Sivaramakrishnan" /><a href="https://kcsrk.info">KC Sivaramakrishnan</a>, Assistant Professor, IIT Madras<br />* Director, IITM</td><td>Inauguration</td></tr>
    <tr><td>10:30 &ndash; 11:15</td><td><img class="sp" src="https://avatars.githubusercontent.com/u/3867081?v=4" alt="Rishiyur S. Nikhil" /><a href="https://github.com/rsnikhil">Rishiyur S. Nikhil</a>, CTO and Co-founder, <a href="https://bluespec.com/">Bluespec</a></td><td><a href="#nikhil">Functional Programming and Concurrent Atomic Transactions for Complex Hardware Design</a></td></tr>
    <tr style="background-color: #f0f0f0;"><td>11:15 &ndash; 11:30</td><td colspan="2" style="text-align: center;"><strong>Networking break</strong></td></tr>
    <tr><td>11:30 &ndash; 12:15</td><td><img class="sp" src="https://www.cse.iitm.ac.in/~chester/pubs/chet.png" alt="Chester Rebeiro" /><a href="https://www.cse.iitm.ac.in/~chester/">Chester Rebeiro</a>, Professor, IIT Madras</td><td><a href="#rebeiro">Trusted hardware for security critical software</a></td></tr>
    <tr><td>12:15 &ndash; 01:00</td><td><img class="sp" src="https://media.licdn.com/dms/image/v2/C5603AQGjQKQtzd8A_Q/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1647665493390?e=2147483647&amp;v=beta&amp;t=ZyRZiDVsvFHmwT1nMmXSL0k0gs45oSEw0Aox4B5SYnE" alt="Krishnan Raghavan" /><a href="https://www.linkedin.com/in/krishnan-raghavan-834aa091/">Krishnan Raghavan</a>, CTO and Co-founder, <a href="https://www.pramaanalabs.ai/">Pramaana Labs</a></td><td><a href="#raghavan">Towards verifiable governance with LLMs and Lean</a></td></tr>
    <tr style="background-color: #f0f0f0;"><td>01:00 &ndash; 02:15</td><td colspan="2" style="text-align: center;"><strong>Networking lunch</strong></td></tr>
    <tr><td>02:15 &ndash; 03:00</td><td><img class="sp" src="https://www.cse.iitb.ac.in/~manas/images/profile.jpg" alt="Manas Thakur" /><a href="https://www.cse.iitb.ac.in/~manas/">Manas Thakur</a>, Assistant Professor, IIT Bombay</td><td><a href="#thakur">From Precise Analysis to Efficient JIT Optimization — The Story of an Object Transformed by CompL</a></td></tr>
    <tr><td>03:00 &ndash; 03:45</td><td><img class="sp" src="https://anil.recoil.org/images/anil-headshot.webp" alt="Anil Madhavapeddy" /><a href="https://anil.recoil.org/">Anil Madhavapeddy</a>, Professor, University of Cambridge</td><td><a href="#madhavapeddy">TESSERA: Functionally Programming Petabytes of Earth Observations</a></td></tr>
    <tr style="background-color: #f0f0f0;"><td>03:45 &ndash; 04:15</td><td colspan="2" style="text-align: center;"><strong>Networking break</strong></td></tr>
    <tr><td>04:15 &ndash; 04:30</td><td><img class="sp" src="https://avatars.githubusercontent.com/u/715302?v=4" alt="Yaron Minsky" />Yaron Minsky, Co-head of Technology, Jane Street (Remote)</td><td><a href="#minsky">Donor Address</a></td></tr>
    <tr><td>04:30 &ndash; 05:15</td><td><img class="sp" src="https://cs.brown.edu/~sk/Images/me-2019-04-10-small.jpg" alt="Shriram Krishnamurthi" /><a href="https://cs.brown.edu/~sk/">Shriram Krishnamurthi</a>, Professor, Brown University (Remote)</td><td><a href="#krishnamurthi">A Programming Language for Lightweight Diagramming</a></td></tr>
    <tr><td>05:15 &ndash; 06:00</td><td><img class="sp" src="https://ilyasergey.net/assets/img/ilya-2021-2.jpg" alt="Ilya Sergey" /><a href="https://ilyasergey.net/">Ilya Sergey</a>, Associate Professor, National University of Singapore</td><td><a href="#sergey">Mechanising a Regex-Based Borrow Checker: An Experiment in AI-Assisted Metatheory</a></td></tr>
  </tbody>
</table>
</div>

<p>All sessions include opportunities for Q&amp;A and discussion.</p>

<h2 id="talks">Talks</h2>

<h3 id="nikhil">Functional Programming and Concurrent Atomic Transactions for Complex Hardware Design</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://avatars.githubusercontent.com/u/3867081?v=4" alt="Rishiyur S. Nikhil" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://github.com/rsnikhil">Rishiyur S. Nikhil, Ph.D.</a></strong> &mdash; Co-founder and CTO, <a href="https://bluespec.com/">Bluespec</a>, Inc.
</div>

<p><strong>Abstract.</strong> For several decades, most hardware (HW) has been designed using certain legacy programming languages (Verilog and VHDL). In this talk we’ll show how we can move from these somewhat impoverished legacy languages to more advanced HW-design languages, applying the same ideas that have given us high-level languages for software: Functional Programming, Atomic Transactions, Expressive Types, Strong Typing, Higher-order Parameterization, Modularity and Compositionality, and so on. We will also identify some future research directions.</p>

<p><strong>Bio.</strong> Rishiyur Nikhil received his B.Tech. degree in EE from IIT Kanpur, and his Masters and Ph.D. degrees in Computer Science from U. Pennsylvania. He was a faculty member in MIT’s Lab for Computer Science, researching functional programming, dataflow and multithreaded computer architectures, and continued this work at Digital Equipment Corp.’s Cambridge Research Lab. In 2003 he co-founded <a href="https://bluespec.com/">Bluespec</a>, Inc., and remains CTO, working on the BSV and BH High-Level Hardware Design Languages and their applications, using ideas from Haskell and atomic transactions. He has created several open-source RISC-V CPU and System designs, and chaired the RISC-V Foundation’s technical group that selected the RISC-V ISA formal spec in Sail.</p>

<h3 id="rebeiro">Trusted hardware for security critical software</h3>

<p><strong><a href="https://www.cse.iitm.ac.in/~chester/">Chester Rebeiro</a></strong> — Professor, IIT Madras</p>

<p><strong>Abstract.</strong> Modern software systems operate atop complex stacks where sensitive computation is exposed to threats ranging from a compromised operating system to vulnerabilities within application components. Hardware–software co-design offers a promising path toward establishing strong, principled security guarantees across these layers.</p>

<p>This talk examines two complementary directions in hardware-assisted security. The first focuses on Trusted Execution Environments (TEEs) for protecting applications from untrusted system software. TESLA, a lightweight TEE built on the Shakti RISC-V processor, demonstrates how minimal yet carefully designed hardware extensions can enforce confidentiality and integrity even in the presence of a malicious OS, while retaining low overhead.</p>

<p>The second direction addresses intra-application security through fine-grained isolation. As modern software increasingly integrates components written in multiple languages, vulnerabilities within a single process can lead to widespread compromise. FIDES, also developed on the Shakti platform, provides hardware-assisted compartments for mixed-language programs, enabling strong isolation between components and limiting the impact of potential exploits.</p>

<p>Together, TESLA and FIDES illustrate a unified approach to hardware-enhanced software security, spanning both system-level protection and intra-program isolation.</p>

<p><strong>Bio.</strong> Chester Rebeiro is a Professor at the Indian Institute of Technology (IIT), Madras. Prior to joining IIT Madras, he was a postdoctoral researcher at Columbia University. He has a Ph.D. from IIT Kharagpur in the area of hardware security. Before joining IIT Kharagpur, he worked as a Member Technical Staff at CDAC, Bangalore. His area of interests include security aspects in the operating system, computer architecture, and VLSI. He is particularly interested in a hardware–software approach to design systems for security.</p>

<h3 id="raghavan">Towards verifiable governance with LLMs and Lean</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://media.licdn.com/dms/image/v2/C5603AQGjQKQtzd8A_Q/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1647665493390?e=2147483647&amp;v=beta&amp;t=ZyRZiDVsvFHmwT1nMmXSL0k0gs45oSEw0Aox4B5SYnE" alt="Krishnan Raghavan" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://www.linkedin.com/in/krishnan-raghavan-834aa091/">Krishnan Raghavan</a></strong> &mdash; CTO and Co-founder, <a href="https://www.pramaanalabs.ai/">Pramaana Labs</a>
</div>

<p><strong>Abstract.</strong> When governments deploy AI in tax administration, regulatory compliance, or citizen-facing legal systems, correctness isn’t optional — it’s a constitutional expectation. Yet today’s LLMs offer fluency without guarantees, making them fundamentally unsuitable as the sole basis for governance infrastructure.</p>

<p>We present work on combining LLMs with Lean 4, the proof assistant, to build verifiably correct representations of legal statutes. Our approach establishes 1:1 correspondence between natural-language law and machine-checkable code, enabling provable correctness of rule application, automatic contradiction detection across large statute bodies, and fully auditable, deterministic outputs. We share early results from formalizing provisions of the Indian Income Tax Act 2025 and argue that “Verified AI” is not an academic luxury but an emerging requirement for legitimate digital governance.</p>

<p><strong>Bio.</strong> Krishnan is CTO and co-founder of Pramaana Labs, a venture-backed company building technology to make AI outputs provably trustworthy in objective domains. Previously, he was an Engineering Leader at Glean where he built the assistant product, driving major reductions in hallucination, and was a Staff Engineer at Google leading modelling efforts for verifying Maps data correctness. Across his entire career, his passion has been turning powerful but opaque AI into verified, structured intelligence.</p>

<h3 id="thakur">From Precise Analysis to Efficient JIT Optimization — The Story of an Object Transformed by CompL</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://www.cse.iitb.ac.in/~manas/images/profile.jpg" alt="Manas Thakur" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://www.cse.iitb.ac.in/~manas/">Manas Thakur</a></strong> &mdash; Assistant Professor, IIT Bombay
</div>

<p><strong>Abstract.</strong> Object-oriented programming and just-in-time (JIT) compilation are two pillars of modern large software systems. Yet, combining them effectively poses challenges while designing performant systems: object allocation, memory access, and garbage collection introduce significant overheads, while JIT compilers must keep program analysis lightweight and fast. This talk explores how precise program analysis — traditionally considered too expensive for JIT settings — can enable aggressive memory optimizations in modern JVMs without sacrificing efficiency.</p>

<p>I will present our recent work on static-analysis–guided optimistic stack allocation, supported by dynamic heapification to ensure correctness in the presence of language and runtime dynamism. I will also discuss how speculative JIT information can improve the precision of statically computed results. Together, these techniques demonstrate how ahead-of-time analysis and just-in-time compilation can be combined to achieve both precision and efficiency, leading to reduced garbage collection, improved performance, and new opportunities for memory optimizations in managed-language runtimes.</p>

<p><strong>Bio.</strong> Manas Thakur is a faculty member in the Department of Computer Science and Engineering at Indian Institute of Technology (IIT) Bombay. His research interests include program analysis, compiler optimizations, and programming languages. Manas holds PhD and Masters degrees in Computer Science and Engineering from IIT Madras. His thesis titled “Precise and Efficient Analysis of Java Programs” won one of the institute research awards and the IBM Best Thesis Award in 2019-20. Prior to joining IITB, Manas was at IIT Mandi where he received the Teaching Honour Roll Award in 2021; and recently, he was honoured with the Faculty of the Year 2024 award by IBM Centre for Advanced Studies. Manas’s research group at IIT Bombay, named CompL [pronunciation: Compel], specializes in JIT compilers and has developed efficient optimization strategies for Java, JavaScript and R.</p>

<h3 id="madhavapeddy">TESSERA: Functionally Programming Petabytes of Earth Observations</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://anil.recoil.org/images/anil-headshot.webp" alt="Anil Madhavapeddy" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://anil.recoil.org/">Anil Madhavapeddy</a></strong> &mdash; Professor of Planetary Computing, University of Cambridge
</div>

<p><strong>Abstract.</strong> I’ll present TESSERA (geotessera.org), a pixel-wise foundation model for multi-modal (Sentinel-1/2) earth observation time series that learns robust, label-efficient embeddings. Our goal with TESSERA is to make manipulating global satellite intelligence as easy as LLMs did for natural language, but also with the robustness of functional programming!</p>

<p>Towards this we release global, annual, 10m, pixel-wise embeddings together with open weights and code and lightweight adaptation heads, providing practical tooling for large-scale retrieval and inference at planetary scale. As with any good foundation model, there are a staggering array of downstream tasks which can benefit. TESSERA embeddings deliver state-of-the-art accuracy with high label efficiency across diverse classification, segmentation, and regression tasks.</p>

<p>In this talk, I’ll take you through an array of problems our users are applying it to, ranging from the ecological to the urban to the temporal. By the end of the talk, I’ll aim to have you identify a seemingly impossible spatial problem that is now within range to solve yourself using our O(x)Caml, Python or Typescript interfaces. Bring your favourite coding agents too!</p>

<p><strong>Bio.</strong> Anil Madhavapeddy is the Professor of Planetary Computing at the University of Cambridge Computer Laboratory. He co-leads the Energy and Environment Group at Cambridge and also co-directs the Centre for Earth Observation and the Cambridge Centre for Carbon Credits (4C), which aims to increase the integrity and effectiveness of natural climate solutions via the application of modern remote sensing. He has decades of experience with constructing Internet-scale systems and has contributed to some of the most widely deployed open-source projects in the world such as Docker, Xen, OCaml and OpenBSD, with users ranging from all the major cloud computing providers to governments worldwide.</p>

<h3 id="minsky">Donor Address</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://avatars.githubusercontent.com/u/715302?v=4" alt="Yaron Minsky" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong>Yaron Minsky</strong> &mdash; Co-head of Technology, Jane Street
</div>

<p><strong>Bio.</strong> Yaron Minsky got his BA in Mathematics from Princeton and his PhD in Computer Science from Cornell focusing on distributed systems. He joined Jane Street in 2003, where he founded the firm’s quantitative research group. Today, he co-heads the technology group there. He introduced OCaml, a statically typed functional programming language, to the company and managed the transition to using OCaml for all of its core infrastructure, turning Jane Street into the world’s largest industrial user of the language. He’s been involved in many different aspects of Jane Street’s technology stack, including machine learning infrastructure, distributed systems design, incremental programming systems, hardware synthesis, trading and risk systems, developer tools, and user-interface toolkits.</p>

<h3 id="krishnamurthi">A Programming Language for Lightweight Diagramming</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://cs.brown.edu/~sk/Images/me-2019-04-10-small.jpg" alt="Shriram Krishnamurthi" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://cs.brown.edu/~sk/">Shriram Krishnamurthi</a> and Siddhartha Prasad</strong> &mdash; Brown University
</div>

<p><strong>Abstract.</strong> Formal modeling tools such as Alloy enable users to incrementally define, explore, verify, and diagnose specifications for complex systems. A critical component of these tools is a visualizer that lets users graphically explore generated models. However, a default visualizer that knows nothing about the domain can be unhelpful and can even actively violate presentational and cognitive principles. At the other extreme, full-blown custom visualization requires significant effort as well as knowledge that a tool user might not possess. Custom visualizations can also exhibit bad (even silent) failures. The same needs and demands apply to programming languages, which are virtually never accompanied by data structure visualizers.</p>

<p>We chart a middle ground between the extremes of default and fully-customizable visualization. We capture essential domain information for lightweight diagramming. To identify key elements of these diagrams, we ground the design in both cognitive science and in a corpus of custom visualizations. We distill from these sources a small set of orthogonal primitives, and use the primitives to guide a diagramming language.</p>

<p>We show how to endow the diagramming language with a spatial semantics and prove that it enjoys key properties. We also show how it can be embedded into three very different languages: Python, Rust, and Pyret. We present a novel counterfactual debugging aid for diagramming errors, combining textual and visual output. We evaluate the language and system for expressiveness, performance, and diagnostic quality. We thus define a new point in the design space of diagramming: through a language that is lightweight, effective, and driven by cognitively sound principles.</p>

<p><strong>Bio.</strong> Shriram is the Vice President for Programming Languages at Brown University in Providence, RI, USA. He’s not, really, but that’s what it says on his business card. At heart, he’s a person of ill-repute: a Schemer, Racketeer, and Pyreteer. He believes tropical fruit are superior to all other kinds. He is terrified of success, because he may be forced to buy a suit. On a more serious note, he’s a professor at Brown who has created several influential systems (such as DrRacket, Margrave, Flapjax, and Lambda-JS) and written multiple widely-used books. He has won SIGPLAN’s Robin Milner Young Researcher Award, SIGPLAN’s Software Award (jointly), SIGSOFT’s Influential Educator Award, SIGPLAN’s Distinguished Educator Award (jointly), and other recognitions.</p>

<h3 id="sergey">Mechanising a Regex-Based Borrow Checker: An Experiment in AI-Assisted Metatheory</h3>

<div style="display:flex; align-items:center; gap:0.75rem; margin-bottom:0.5rem;">
<img src="https://ilyasergey.net/assets/img/ilya-2021-2.jpg" alt="Ilya Sergey" style="width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0;flex-shrink:0;" />
<strong><a href="https://ilyasergey.net/">Ilya Sergey</a></strong> &mdash; Associate Professor, National University of Singapore
</div>

<p><strong>Abstract.</strong> I will present a mechanised metatheory and a soundness proof for a regex-based borrow checker for Move, a Rust-inspired smart contract language used by Sui and Aptos blockchains. The type system tracks aliasing as regular expressions over field paths, using Brzozowski derivatives for field borrows and Kleene star for unbounded aliasing from calls and loops. In this model, write safety in the presence of aliasing reduces to a decidable regex emptiness check. Working with Claude Code over 27 intensive days, a single researcher has produced a full mechanisation of Move in 39K LOC of sorry-free Lean code. The formalisation has been extensively tested against the production Move compiler for compatibility and can serve as a reference implementation. Reflecting on the outcomes of this experiment, I will argue that AI-assisted formalisation of realistic programming languages shifts the bottleneck from writing proofs to designing invariants, making machine-checked mechanisation a practical tool for iterative prototyping of correct-by-construction type systems.</p>

<p><strong>Bio.</strong> Ilya Sergey is an Associate Professor at the School of Computing of National University of Singapore, where he leads the Verified Systems Engineering lab. Ilya got his PhD in Computer Science at KU Leuven. Before joining NUS, he was a postdoctoral researcher at IMDEA Software Institute and a faculty at University College London. Ilya does research in programming language design and implementation, software verification, and distributed systems. He is a Program Committee Co-Chair for OOPSLA’27; he was the General Chair for ICFP 2025 and organised the ICFP Programming Contest in 2019. He is a recipient of several distinguished paper awards at POPL and PLDI, the 2019 Dahl-Nygaard Junior Prize, Yale-NUS Distinguished Researcher award, and academic research awards from Ethereum Foundation, Google, Meta, and Amazon.</p>

<hr />

<p>If you have questions, reach out to <a href="mailto:contact@fplaunchpad.org">contact@fplaunchpad.org</a>.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://fplaunchpad.org/assets/images/logo_with_name.png" /><media:content medium="image" url="https://fplaunchpad.org/assets/images/logo_with_name.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Applications Open: Post-Baccalaureate Fellowship</title><link href="https://fplaunchpad.org/2026/03/06/applications-open-post-bacc-fellowship.html" rel="alternate" type="text/html" title="Applications Open: Post-Baccalaureate Fellowship" /><published>2026-03-06T00:00:00+00:00</published><updated>2026-03-06T00:00:00+00:00</updated><id>https://fplaunchpad.org/2026/03/06/applications-open-post-bacc-fellowship</id><content type="html" xml:base="https://fplaunchpad.org/2026/03/06/applications-open-post-bacc-fellowship.html"><![CDATA[<p>FP Launchpad is accepting applications for its inaugural cohort of Post-Baccalaureate Fellows. We are looking for <strong>8 Fellows</strong> to join us at <a href="https://www.iitm.ac.in/">IIT Madras</a> for a fully funded, two-year research fellowship starting later this year.</p>

<p>This post describes what the fellowship is, who it is for, and what comes after.</p>

<h2 id="why-this-exists">Why this exists</h2>

<p>AI coding agents are making software increasingly accessible and enabling its production at unprecedented scale. That is exciting, but it also introduces far-reaching consequences for civic society. Software that governs elections, manages public infrastructure, and mediates access to services needs more than convenience. It needs mathematical guardrails: correctness guarantees, memory safety, principled concurrency, formal verification. The people who can build and maintain such software are in short supply, and the gap between demand and opportunity in India is acute. FP Launchpad exists to close that gap.</p>

<h2 id="what-the-fellowship-is">What the fellowship is</h2>

<p>The fellowship sits at the centre of everything FP Launchpad does. Fellows work full-time on ambitious projects in systems and functional programming: building real systems, publishing at top venues, and contributing to open-source software that people depend on. The <a href="https://ocaml.org/">OCaml</a> programming language and the <a href="https://oxcaml.org/">OxCaml</a> extensions are the primary research vehicles, but the problems cut across programming languages, compilers, runtime systems, formal verification, concurrency, security, and AI-augmented software engineering. For more on what is expected, see the <a href="/charter/">FP Launchpad charter</a>.</p>

<p>The core idea is a tight feedback loop between research and real systems. Research hypotheses are explored by building and deploying actual software, not isolated prototypes. When something breaks in deployment, that feeds back into the research. When a new idea works in the lab, it gets pushed into production. This is the model behind OxCaml at Jane Street, where a principled, fast-moving language is used in production at scale, failures are caught early, and rolled back safely. FP Launchpad aims to capture that same spirit.</p>

<p>You will not work in isolation. You will be part of a cohort of 8 fellows, working alongside each other, learning from each other, and building a shared culture. You will be mentored by FP Launchpad faculty and interact with members of our <a href="/charter/">advisory board</a>, including researchers and engineers from <a href="https://www.janestreet.com/">Jane Street</a>, Purdue, UC San Diego, Brown, Cambridge, Microsoft Research, and elsewhere. You will have funded trips to present your work at international conferences, workshops, and summer/winter schools, as well as funded visiting researcher positions at partner universities around the world, where there is collaboration and mutual interest. In addition, you will have access to frequent talks by visiting researchers and experts, and associated events, that comes from being on a vibrant academic campus at IITM.</p>

<p>Fellows have real agency in shaping their research direction. You will arrive with interests and ideas, and together with your mentors, define the problems you work on. The application asks what you want to build. We take that seriously.</p>

<figure style="margin: 2em auto; max-width: 600px; box-shadow: 0 2px 12px rgba(0,0,0,0.15); border-radius: 4px; overflow: hidden;">
  <img src="/assets/images/ramanujan.png" alt="Ramachandra Rao on Ramanujan: 'He never craved for any distinction. He wanted leisure; in other words, that simple food should be provided for him without exertion on his part and that he should be allowed to dream on.'" style="width: 100%; display: block;" />
</figure>

<p>When Ramachandra Rao <a href="https://peachf.org/images/SouthAsia/IndiaMathPapersRamanujan.pdf">first met Ramanujan</a> in Madras, he noted that the young mathematician never craved distinction. What he wanted was <em>leisure</em>: “that simple food should be provided for him without exertion on his part and that he should be allowed to dream on.” The fellowship is built in that spirit. Its point is to give you the time, the mentorship, and the intellectual space to do work that matters, and to figure out what kind of work you want to spend your life doing. But it is also bigger than any individual fellow. You will be contributing to the open-source commons, to India’s systems research capacity, and become the next generation of maintainers for foundational software.</p>

<h2 id="who-this-is-for">Who this is for</h2>

<p>We want people who enjoy making sense of chaotic systems. People who look at a garbage collector, a network stack, or a distributed consensus protocol and feel compelled to understand <em>why</em> it works the way it does, and then want to make it better using principled tools: type systems, formal methods, programming language design.</p>

<p>We want people who want to solve real problems. Not toy benchmarks, but problems like: building a <a href="https://shakti.org.in/">verifiable voting system</a> on RISC-V hardware and <a href="https://mirage.io/">MirageOS</a> unikernels, creating programmable public infrastructure for environmental planning, or writing a formally verified runtime system for a production language. These are <a href="/charter/">illustrative projects</a> from our charter, the kind of work fellows will shape and drive. The projects use OCaml and OxCaml as their foundation.</p>

<p>In your application package, we want to see evidence of building, code you have written, bugs you have debugged, systems you have deployed and open-source contributions. It does not matter if the projects are small. What matters is that they are yours.</p>

<h3 id="prerequisites">Prerequisites</h3>

<p>The fellowship assumes a certain starting point. Here is how to know if it is a good fit for you right now.</p>

<p>You should be a programmer who has built things from scratch, not just followed tutorials or used frameworks. You should be able to point to code you have written and explain the decisions in it. Strong C/C++ skills are expected. Exposure to OCaml, Haskell, Rust, or a similar language is a plus, but not required.</p>

<p>You should have some evidence of building beyond coursework. This could be open-source contributions, personal projects, research prototypes, or a hard bug you tracked down. The projects do not need to be large. They need to be genuinely yours.</p>

<p>You should be comfortable with the expectation that fellows publish at top venues, contribute to real open-source projects. This is not a part-time position, and you are expected to work full-time on campus at IIT Madras. The fellowship is demanding, and that is the point.</p>

<p>If you are interested but feel you are not quite ready, that is fine. Start with the <a href="https://kcsrk.info/ocaml/2025/11/10/hacking/">systems foundations</a> to hack on the OCaml compiler and the ecosystem, and apply when you are. This is the first cohort, and there will be future ones.</p>

<h2 id="what-comes-after">What comes after</h2>

<p>A two-year fellowship is long enough to do serious work and short enough to be a launching pad, not a destination. Here are the paths fellows can take:</p>

<p><strong>MS/PhD at IIT Madras.</strong> Fellows can earn course credits during the fellowship. If eligible, you can transition into a degree programme at IIT Madras, continuing your research momentum while earning a graduate degree. See <a href="https://cystar.iitm.ac.in/join-us/#:~:text=Pathways%20to%20IIT%20Madras">Pathways to IIT Madras</a> for an overview of how this works.</p>

<p><strong>Graduate school worldwide.</strong> The fellowship gives you publications, strong recommendation letters, and the research maturity to apply to top PhD and MS programmes globally. Fellows will have worked with world-class researchers and will carry a demonstrated track record of systems research.</p>

<p><strong>Industry with open-source credentials.</strong> Two years of meaningful contributions to production open-source systems are a powerful signal. Fellows will leave with a portfolio of real work, not class assignments, that speaks directly to the best systems roles in the industry.</p>

<p><strong>Found a company.</strong> The technology you build here could be the seed. IIT Madras has one of India’s strongest startup ecosystems, with an <a href="https://www.iitm.ac.in/research-park/incubation-cell">incubation cell</a> and <a href="https://www.iitmrp.com/">research park</a> designed to turn research into companies. If you want to turn research into a product, this is a good place to start.</p>

<h2 id="how-to-apply">How to apply</h2>

<p>Applications are open now. <strong>The deadline is 20 April 2026.</strong></p>

<p style="text-align: center; margin: 2em 0;">
  <a href="https://docs.google.com/forms/d/e/1FAIpQLSdhS9b4vX1u7T1pAFhXc4ZADJXtVIFkHgUvjZOW1K9q9L9I9g/viewform" style="background-color: #005f73; color: white; padding: 12px 32px; text-decoration: none; border-radius: 4px; font-weight: bold;">Apply Now</a>
</p>

<p>The application asks about your motivation, your technical background, your programming experience, and a code sample you have written from scratch. It is not long, but it is not superficial either. We read every application carefully.</p>

<p>If you have questions, reach out to <a href="mailto:careers@fplaunchpad.org">careers@fplaunchpad.org</a>.</p>

<p>If you have been looking for the right place to do serious work, apply.</p>

<h2 id="faq">FAQ</h2>

<details>
  <summary><strong>Am I eligible?</strong></summary>

  <p>We are unable to answer case-by-case eligibility questions. If you are unsure, please submit a completed application and we will evaluate it. The prerequisites section above describes the profile we are looking for.</p>

</details>

<details>
  <summary><strong>The fellowship says it is fully funded. What exactly is covered?</strong></summary>

  <p>Fellows receive a monthly stipend of up to ₹1,00,000, based on educational qualifications and experience, in accordance with <a href="https://icandsr.iitm.ac.in/">IITM IC&amp;SR</a> norms. Conference attendance costs (registration, travel, and accommodation) are fully covered when the fellow has an accepted paper or an accepted talk at an approved conference, again subject to IITM norms. No other expenses (relocation, housing, healthcare, etc.) are covered separately.</p>

</details>

<details>
  <summary><strong>Can I use AI tools to write my application?</strong></summary>

  <p>We read every application carefully, including the code sample, and evaluate for evidence of genuine understanding and independent work. Applications that rely on primarily AI-generated content, whether in the written responses or the code sample, will be identified and rejected. We are looking for your voice, your thinking, and your code. If you cannot demonstrate that, this fellowship is not the right fit.</p>

</details>

<h2 id="stay-in-touch">Stay in touch</h2>

<p>If this fellowship is not the right fit for you right now, or if you are not yet eligible to apply, we would still love to stay connected. Sign up for our newsletter to hear about future cohorts, other open positions, events, and opportunities at FP Launchpad. To subscribe, email <a href="mailto:contact@fplaunchpad.org?subject=Subscribe%20to%20Newsletter">contact@fplaunchpad.org</a> with the subject line “Subscribe to Newsletter”. We send updates infrequently and only when there is something meaningful to share.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[FP Launchpad is accepting applications for its inaugural cohort of Post-Baccalaureate Fellows. We are looking for 8 Fellows to join us at IIT Madras for a fully funded, two-year research fellowship starting later this year.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://fplaunchpad.org/assets/images/logo_with_name.png" /><media:content medium="image" url="https://fplaunchpad.org/assets/images/logo_with_name.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>