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

Sponsoring

@pawamoy
@typst
@MikeInnes

Highlights

  • Pro

Organizations

@JuliaCompilerPlugins

Block or report femtomc

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

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

Report abuse
femtomc/README.md

McCoy R. Becker (femtomc)

Homepage · GitHub · GenJAX · MIT ProbComp

Image

I’m currently a PhD student at 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.

Current focus:

  • probabilistic programming on accelerators
  • programmable inference systems
  • agent harnesses

I'd characterize myself as a systems thinker - I like sharp programmable tools, and I'm obsessive about design. 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 boiling down a design into modular and compositional pieces. 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.


Selected long-running projects

This list prioritizes projects with sustained many-week development and omits short scratch repos, of which I have endless.

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

femtomc.github.io

Pinned Loading

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

    Probabilistic programming with programmable inference for parallel accelerators.

    Python 47 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 12 4