Skip to content
View femtomc's full-sized avatar
🍳
Let them cook.
🍳
Let them cook.

Sponsoring

@pawamoy
@typst

Highlights

  • Pro

Organizations

@JuliaCompilerPlugins

Block or report femtomc

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
femtomc/README.md

McCoy R. Becker / Homepage / GitHub / MIT ProbComp

I work on probabilistic algorithms and software for modern hardware, with a lot of my time spent thinking about programming languages, compilers, and systems. I'm currently a PhD student at MIT ProbComp.

Current focus:

  • probabilistic programming on accelerators, especially parallel ones
  • programmable inference systems
  • agent harnesses
  • Human/agent interface and interaction design (an important area!)

I'd characterize myself as a systems thinker — I like sharp programmable tools. Most of my work starts from my desire for some sort of experience or useful item, and then I spend a lot of time thinking and tinkering, often with the goal of constructing one of these tools. I often get stuck in this phase, and like for my collaborators to yank me out. When it comes to projects, I'm not risk averse, and I'm willing to spend a large amount of time to get something right or try something crazy. This may indicate I'll never be a very successful academic, but I'm happy to share designs which I think are good with the world.


Local churn

Packages with recent commit activity.


glom
agent context search


codebase analysis

sdfii
terminal 3D SDF renderer

pelican
constraint-based diagrams

Selected projects

Probabilistic programming

  • genjax — Probabilistic programming language built on JAX, centered on generative functions and traces; supports programmable Monte Carlo + variational inference workflows, and is packaged as a POPL'26 artifact with docs/tests/case studies. stars
  • programmable-vi-pldi-2024 — Artifact repository for the PLDI 2024 paper Probabilistic programming with programmable variational inference; includes the JAX implementation plus reproducibility scripts for the evaluation figures/tables. stars
  • Jaynes.jl — Research-oriented alpha DSL/compiler for probabilistic programming in Julia; uses source-to-source IR transformations and contextual dispatch to implement the Gen.jl generative function interface. stars
  • Problox.jl — Julia DSL for probabilistic logic programming that wraps ProbLog; compiles Julia-side model syntax into ProbLog programs and supports direct evaluation/querying from Julia. stars

Language and compiler systems

  • abstraps — Rust compiler framework for extensible abstract interpretation, with MLIR-isomorphic IR concepts, abstract-VM interpreter interfaces, and builders for MLIR code generation. stars
  • juju — Extensible compiler from JAX computations (Jaxprs) to Modular MAX graphs; lowers JAX primitives to MAX operations for execution in MAX inference sessions. stars
  • pistachio — Experimental dependently typed language/theorem-prover implementation focused on elaboration and normalization-by-evaluation techniques. stars

Agent tooling

  • mu — Programmable personal assistant for technical work, designed for long-running execution/persistence/reactivity; exposes shell-first primitives (issues, heartbeats, programmable mu_ui docs) for custom orchestration. stars

Papers

Tools I use

Open-source software from my dotfiles that makes my workflow possible. Nodes with a link to the project's sponsor page.


femtomc.github.io

Pinned Loading

  1. genjax-community/genjax genjax-community/genjax Public

    Probabilistic programming with programmable inference for parallel accelerators.

    Python 54 7

  2. programmable-vi-pldi-2024 programmable-vi-pldi-2024 Public

    Probabilistic programming with programmable variational inference.

    Jupyter Notebook 22 4

  3. genjax genjax Public

    Probabilistic programming with vectorized programmable inference

    Python 17 6