This talk, given by Andrew Lelechenko at Lambda Days, discusses the use of Haskell for mathematical libraries; opposed to scientific libraries which has been described as 'a lump of Fortran-ish code with an API from 1970s.'
Andrew is a software developer from London with a strong background in mathematics and computer science. After receiving his PhD degree, he went into industry and ended up developing a compiler of the domain-specific language for finance and trading, implemented in Haskell. His main open-source contributions are mathematical libraries with a focus on performance. This talk demonstrates a modern approach to the design of mathematical libraries, leveraging advanced functional programming and type theory for the greater good. Our subject is `arithmoi`, a Haskell library for number theory research. We will discuss an effect of dependent types, laziness and type classes on library design, achieving both expressivity and computational efficiency.
This talk was given by Andrew Lelechenko at Lambda Days.