strongly-typed: changed TypedFloat to abstract