selected works · 2014 — 2026

Thomas Durieux

Program-analysis engineer. I build static analysis at scale — from compiler-grade tooling to production AI SAST — at Endor Labs. Below: a catalogue of the software and research I've built.

Spoon
001 2014—

Spoon

An open-source library for parsing, analyzing, and transforming Java source code as an AST.

Program AnalysisJavaAST
Anonymous GitHub
002 2017—

Anonymous GitHub

A web service that anonymizes GitHub repositories so they can be shared in double-blind paper submissions.

Open ScienceWeb ServiceGitHub
docker-parfum
003 2023

docker-parfum

A static analyzer and autofix tool for Dockerfiles, built on Tree-sitter.

Program AnalysisDockerTree-sitter
Dinghy
004 2023

Dinghy

A versatile AST parser for shell scripts and Dockerfiles.

Program AnalysisDockerfileAST
EnergiBridge
005 2023

EnergiBridge

A cross-platform tool to measure software energy consumption (CPU, GPU, RAM).

SustainabilityMeasurementRust
index of works 19 projects
ProjectYear
01 Spoon An open-source library for parsing, analyzing, and transforming Java source code as an AST. Program AnalysisJavaAST 2014— 02 Anonymous GitHub A web service that anonymizes GitHub repositories so they can be shared in double-blind paper submissions. Open ScienceWeb ServiceGitHub 2017— 03 docker-parfum A static analyzer and autofix tool for Dockerfiles, built on Tree-sitter. Program AnalysisDockerTree-sitter 2023 04 Dinghy A versatile AST parser for shell scripts and Dockerfiles. Program AnalysisDockerfileAST 2023 05 EnergiBridge A cross-platform tool to measure software energy consumption (CPU, GPU, RAM). SustainabilityMeasurementRust 2023 06 BibTeX2Wiki Converts BibTeX entries into Wikipedia-style references. Writing ToolsLaTeXLibrary 2014 07 BikiniProxy A research prototype HTTP proxy that rewrites buggy client-side HTML and JavaScript to keep web pages working. Program RepairWebResearch 2018 08 BlueLaTeX A toolchain for collaborative, real-time LaTeX editing. Writing ToolsLaTeXCollaboration 2014 09 c2Spoon Maps the XML representation of a C program onto the Java AST used by Spoon. Program AnalysisCAST 2019 10 Defects4J Dissection Data and analysis describing the patches in the Defects4J bug dataset. DatasetsJavaResearch 2018 11 IntroClassJava A Java port of the IntroClass benchmark of small buggy programs. DatasetsJavaBenchmark 2016 12 Itzal A research prototype for generating patches directly in a production environment. Program RepairRuntimeResearch 2017 13 LeBonCoin JS API A JavaScript client for the leboncoin.fr listings API. Developer ToolingJavaScriptLibrary 2016 14 Maven-repair A Maven plugin to run automated program repair on a project. Program RepairJavaMaven 2017 15 Nopol An automatic repair tool for Java bugs in conditional statements. Program RepairJavaResearch 2016 16 NPEFix A research tool that explores runtime strategies to recover from null-pointer exceptions in Java. Program RepairJavaResearch 2017 17 SmartBugs A framework for running static-analysis tools over Solidity smart contracts, with a curated vulnerability dataset. Software SecurityEthereumFramework 2019 18 SyncTeX-js A SyncTeX parser written in JavaScript. Writing ToolsLaTeXLibrary 2015 19 Travis Listener A small library that streams new builds from the Travis CI API in real time. Developer ToolingCI/CDResearch 2019