Tag: rust

Parser combinators in Rust

I have been working on a side project in Rust recently and thought I would write up some of the interesting things I've encountered while building something substantial and learning Rust at the same time. Early in the project, I had a need to some strings into structured types. Coming from Haskell, my first thought was to use parser combinators; however, I was open to other options if there was something better or more conventional in the Rust ecosystem. It is probably worth a separate post to…

Introducing build-bom

TL;DR The build-bom tool makes it easy to obtain LLVM IR for C/C++ programs without requiring any modifications to build systems by using the low-level debugger primitive ptrace. This is something you may want if you build tools to analyze C/C++ programs. A typical use of build-bom looks like: ./configure build-bom generate-bitcode -- make build-bom extract-bitcode /path/to/binary --output binary.bc Background What is LLVM IR? LLVM IR is the intermediate representation of code used by LLV…