Paths to Support Additional Numeric Types on the Java Platform #JVMLS
Joe Darcy on September 21, 2025Since the original release in 1995, the Java language and virtual machine have supported float
and double
floating-point types and the java.math
package added in JDK 1.1 included BigDecimal
and BigInteger
as library types.
With various other library additions in the intervening releases, the set of numeric types in the Java platform has been stable for many years. Scientific and engineering computation relies on linear algebra and complex numbers while machine learning benefits from computing on smaller numeric types, including 16-bit floating-point numbers and the IEEE SA Working Group P3109 is even investigating standardizing a family of 8-bit floating-point formats for machine learning.
This talk discusses the aspects needed to provide full support for new numeric types in the Java platform and presents trade-offs on different paths to provide that support.
Make sure to check the JVMLS 2025 playlist.