Latest Blog Articles
- Writing a Linux Debugger Part 9: Handling variables July 26, 2017
- C++17 attributes - maybe_unused, fallthrough and nodiscard July 20, 2017
- Metaclasses for embedded domain specific languages June 28, 2017
- Writing a Linux Debugger Part 8: Stack unwinding June 24, 2017
- Writing a Linux Debugger Part 7: Source-level breakpoints June 19, 2017
About MeI am a C++ enthusiast, currently writing toolchains and standards for heterogeneous systems. My CV is available here.
I am from Edinburgh, Scotland, which is known for its castle, history, and unpredictable weather. I studied Computer Science at the University of St Andrews, graduating with a 1st class BSc (Hons) in 2013.
I have an unhealthy love of template metaprogramming and the dark corners of C++. This blog is intended to be an outlet for discoveries and musings on C++ and any other tools which interest me.
I am active in various community areas:
- Specification editor for the HSA Tools and Runtime groups
- Co-organiser of Edinburgh C++ Meetup
- Gold C++ badge holder on Stack Overflow
HSA Debugger and v1.1 Specs Released
I was the spec editor for the runtime and tools groups, and wrote the profiling APIs. I also ported LLDB to AMD's HSA implementation.Jun 2016
Software Engineer at Codeplay
Heterogeneous compiler and debugger work, mostly based on LLVM, Clang and LLDB. Also contributing to various standards bodies.July 2013-present
BSc (Hons) 1st Class
Graduated from the University of St Andrews with a 1st class BSc in Computer Science.June 2013
Internship at eeGeo
Worked on a 3D maps platform. I used Hadoop to port ordinance survey data for the whole of Britain to the platform, and wrote a Lunar Lander game using the SDK.June-Sept 2012
Internship at IBM
Worked on the build team, implementing a build archival system, setting up automated testing, providing support for the developers.June-Sept 2011