Hey there!
A bit about me:
- Passionate about building resilient, valuable software
- Longtime Rust project member and contributor
- Programming language researcher with PLASMA lab at UMass Amherst
- Won 2nd place in ACM POPL’22 Student Research Competition
I’m passionate about building reliable and efficient software. I’m currently a student at the University of Massachusetts Amherst, studying for my bachelor’s degree in Computer Science in the Commonwealth Honors College. As a college student, I’m continuing my long-term contributions and leadership for the Rust programming language, and I’m expanding my involvement in academic research, with a focus on programming languages and systems.
Rust
I started contributing to the Rust programming language in 2020. Since 2021, I’m a member of the Rustdoc and Rustdoc Frontend teams, along with several working groups. As a member of the Rustdoc team, I develop and maintain Rust’s official documentation generatation tool, which is responsible for rendering the API documentation for all Rust crates.
Starting in summer 2024, I’m also involved in the effort to expand const generics in Rust. I’ve also contributed significantly to Rust’s compiler and standard library.
Highlights
I’ve made over 1,000 contributions to Rust, but here are a few highlights.
- Refactored representation of const generic arguments to enable major extensions
- Added automated guidance to fix common borrow-checker error for new users
-
Added automated suggestion to use
i += 1
instead of incorrecti++
-
Added
std::io::read_to_string()
- Implemented Markdown rendering for Rustdoc search results
- Added support for generics in intra-doc links
-
Helped pave the way for Rust 2021’s
panic!()
macro consistency improvements - Many improvements to Rustc error messages
- Many, many code-quality improvements to Rustdoc
Research
I’ve been interested in academic research, particularly in programming languages and systems, for a number of years. I’ve attended several ACM SIGPLAN conferences and Programming Languages Mentoring Workshops and presented at the POPL’22 Student Research Competition.PLASMA
I’m working with Dr. Emery Berger’s PLASMA lab at UMass Amherst, which focuses on applying programming languages and systems techniques to solve real-world problems. Or, as Dr. Berger says, doing “cool stuff that matters”. :)
“Filling a Niche”
I developed a research project that
formalized the “niche” memory layout optimization, which had never before been described in the research
literature. This optimization is used by languages including Rust and Swift to reduce the memory usage of
algebraic data types. Among other things, it allows Rust to represent Option<&T>
with just a pointer,
where the null 0x0
value represents the None
variant.
My project won second place in the Undergraduate Category of the ACM SIGPLAN POPL’22 Student Research Competition. I entered while a dual-enrollment high school student at College of Marin, where I was interviewed by librarian Dr. David Patterson about my project.
Links: [extended abstract] • [lightning talk] • [implementation artifact] • [interview]
A note about my name
My first name is “Noah Lev”, and my last name is “Bartell-Mangel”. Two-word first names are unusual and can be
confusing, so I wanted to clear it up here. I go by @camelid
on GitHub, but not on any other
platforms. If you see a “camelid” on another platform, it’s not me.