Skip to content
View langston-barrett's full-sized avatar
Block or Report

Block or report langston-barrett

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.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, 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
langston-barrett/README.md

Researcher interested in functional programming, formal methods, programming languages, and security.

Projects

A comprehensive list is available here.

Highlighted Projects

  • MATE: A suite of tools for interactive program analysis with a focus on hunting for bugs in C and C++ code using Code Property Graphs
  • cclyzer++: a precise and scalable global pointer analysis for LLVM code
  • Mogglo: Multi-language AST-based code search and rewriting tool that supports embedding Lua code in patterns
  • treereduce: A fast, parallel, syntax-aware test case reducer based on tree-sitter grammars
  • tree-splicer: Simple grammar-based test case generator (black-box fuzzer)

Datalog

  • cclyzer++: a precise and scalable global pointer analysis for LLVM code
  • dlsubst: Experimental bottom-up Datalog engine based on explicit substitutions
  • Duckalog: Datalog engine based on DuckDB
  • souffle-lint: A linter for Soufflé Datalog
  • treeedb: Generate Soufflé Datalog types, relations, and facts that represent ASTs from a variety of programming languages.
  • tree-sitter-souffle: A tree-sitter grammar for Soufflé Datalog

Fuzzing

  • radamsa-sys: Rust bindings for Radamsa
  • treereduce: A fast, parallel, syntax-aware test case reducer based on tree-sitter grammars
  • tree-crasher: Easy-to-use grammar-based black-box fuzzer
  • tree-splicer: Simple grammar-based test case generator

Tiny tools

  • Icemelter: Icemelter automates steps in debugging rustc internal compiler errors (ICEs)

Tiny libraries

  • fin-part-ord: Crate for representing finite partial orders
  • tree-sitter-edit: A crate for printing modified tree-sitter parse trees, intended for use in multi-language code refactoring, linting, or modification (codemod) tools

Other

Writing

Pinned

  1. tree-crasher tree-crasher Public

    Easy-to-use grammar-based black-box fuzzer. Has found dozens of bugs in important targets like Clang, Deno, and rustc.

    Rust 59 9

  2. treereduce treereduce Public

    A fast, parallel, syntax-aware test case reducer based on tree-sitter grammars

    C++ 41 1

  3. treeedb treeedb Public

    Generate Soufflé Datalog types, relations, and facts that represent ASTs from a variety of programming languages.

    Rust 51 7

  4. mogglo mogglo Public

    Multi-language AST-based code search and rewriting tool that supports embedding Lua code in patterns

    Rust 26 1

  5. souffle-lint souffle-lint Public

    A linter for Soufflé Datalog

    Rust 12 1

  6. icemelter icemelter Public

    Icemelter automates steps in debugging rustc internal compiler errors (ICEs)

    Rust 5