fin 0.0.2

finite, NaN-free floiting point numbers. Not ready to be used yet!
Documentation
  • Coverage
  • 1.85%
    1 out of 54 items documented0 out of 49 items with examples
  • Size
  • Source code size: 16.49 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 702.57 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 11s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • madmalik

fin - finite, NaN-free floiting point numbers for rust

Working with floats can be a bit of a pain in the backside, since floats can carry errors conditions that are not handled by the type system. In addition, rust does not implement the Ord trait for f3 and f64. Which is correct since a total ordering makes no sense in the face of NaN-values.

fin aims to improve on that situation as a zero-cost abstraction (in the sense that the performance hit is not greater than manually checking conditions where its nessesary)

Usage

Add this to your Cargo.toml (since the fin project is very much in flux, getting this package from github is the preferred way for now):

[dependencies]
fin = { git = "https://github.com/madmalik/fin.git" }

and this to your crate root:

extern crate fin;

Principle

Fin uses session types to track invariants on floating point numbers.

License

MIT