Duncan Macgregor is a Principal Software Engineer based in Cambridge with over a decade of experience implementing dynamic languages and low-level VM features on the JVM. Now at ServiceNow and formerly with Oracle Labs, he has deep expertise in GraalVM, TruffleRuby, and OpenJDK Loom—contributing performance-critical fixes, intrinsics, and native C-API work that bridge Ruby semantics and JVM internals. He combines hands-on Java and C development with test-driven specification work, improving string/format handling, arithmetic primitives for LLVM, and virtual-thread support. Duncan’s contributions to high-profile open-source projects like TruffleRuby, Graal, and Loom demonstrate a rare mix of language runtime design and practical engineering. Colleagues rely on him to tackle subtle edge cases and optimize cross-language interoperability in production systems.
A high performance implementation of the Ruby programming language, built on GraalVM.
Role in this project:
Back-end Developer & Java Developer
Contributions:1 review, 1819 commits, 154 PRs in 5 years 8 months
Contributions summary:Duncan's commits primarily involve modifications and additions to the TruffleRuby project, specifically focusing on implementing and improving core Ruby functionalities. The user implemented and maintained various native functions, like `rb_tr_sprintf`, and expanded capabilities to handle value comparisons with nil and other edge-cases. The work included refactoring various parts of the codebase and also optimizing string splitting and format processing. These changes required modifying C source files as well as working with Java code.
Contributions summary:Duncan primarily contributed to the ruby/spec repository by adding and modifying specifications for various C-API functions related to string manipulation, numeric conversions, and other core Ruby functionalities. They focused on ensuring the correctness and comprehensive testing of different C-API functions. Their work involved updating existing test suites to cover edge cases and provide proper validation for specific functionalities.
ruby-gemmspecrailsrubyspec
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Duncan Macgregor - Principal Software Engineer at GE Energy