Mark Hoemmen joins Rob and Jason. They first talk about an debugging improvements in VS Code and C++20/23 features going into MSVC. Then they talk to Mark Hoemmen about his past work on linear algebra libraries Tpetra and Kokkos, and current efforts to get linear algebra into the standard.

- What’s new for C++ debugging in VS Code
- Conformance should mean something - fputc, and freestanding
- MSVC C++20/23 Update

- Tpetra parallel linear algebra
- P1417R0: Historical lessons for C++ linear algebra library standardization
- P1673R7: A free function linear algebra interface based on the BLAS
- P1674R1: Evolving a Standard C++ Linear Algebra Library from the BLAS

Mark Hoemmen (he/him/his, “HOE-men”) is a scientific software developer with a background in parallel computing and numerical linear algebra. He has a bachelor’s degree in mathematics and computer science from the University of Illinois Urbana-Champaign, and a PhD in computer science from the University of California Berkeley.

After finishing his studies, Mark worked at Sandia National Laboratories for ten years. There, he contributed to two open-source C++ software projects: Trilinos (concentrating on its core of distributed-memory parallel sparse linear algebra) and Kokkos (a shared-memory parallel programming model providing a common front-end to CUDA, OpenMP, and other systems). For his last few years at Sandia, he focused more on applying Trilinos and Kokkos to non-open-source engineering (finite-element and finite-volume) simulation applications. In early 2020, he moved to Stellar Science, a scientific software company based in Albuquerque, and contributed to several non-open-source physics and discrete event simulations. This April, Mark joined the Devtech Compute team at NVIDIA, working remotely from his home in Albuquerque, New Mexico, USA.

Mark’s preferred programming language is C++. He has been writing it professionally for 22 years, and has been contributing to the C++ Standard (WG21) process for the last five of those. He is coauthor on three Standard Library proposals in flight: P1673 (C++ BLAS interface), P0009 (mdspan, a multidimensional array view), and P1684 (mdarray, the container analog of mdspan). After C++, he feels most comfortable working in Python, and can get by in Fortran, Matlab, and ANSI Common Lisp. In his spare time, he likes to play mandolin, lute, and baroque guitar.