Pick your number type with Spire
summary
Spire is a Scala numeric library that supplies type classes and concrete types (Rational, Algebraic, Interval, Complex, BigInt/BigDecimal, unsigned ints and custom cyclotomic numbers), plus law-driven tests and a mini-spire 2,000-line extraction. A Mandelbrot benchmark shows generic specialization matches hand-written JVM performance (float vs double comparable), while JS and native show regressions; Spire spans ~33k LOC, eight years old, not yet 1.0, and faces boxing, specialization and maintenance trade-offs.
AI-written summary · about
chapters (11)
- 0:00Start
- 2:43Pick your number type with Spire
- 6:41What's wrong with the Scala stdlib?
- 10:00What are numbers, and how to encode them?
- 11:58Real numbers on a computer
- 14:15Why does it matter?
- 15:54The JVM, Scala and Spire
- 24:14API and laws
- 40:19Questions to audience
- 41:52Spire status
- 44:44Roadmap
related talks
49mNumeric Programming With Spire
25mLEVERAGING SPIRE FOR COMPLEX TIME ALLOCATION LOGIC
41mLeveraging Spire for complex time allocation logic
40mScala 2.13
44mSpores: Distributable Functions in Scala
45mScala and the JVM as a Big Data Platform Lessons from Apache Spark
21mLawful AI
30mDecorate your types with refined
