@hackage science-constants-dimensional0.1.0.3
Mathematical/physical/chemical constants
Categories
License
BSD-3-Clause
Maintainer
Anton Vorontsov <anton@enomsg.org>
Links
Versions
Installation
Dependencies (4)
- base >=4.6 && <5
- dimensional <=1.3
- numtype-dk
- science-constants >=0.2 Show all…
Dependents (1)
@hackage/acme-everything
Science.Constants.Dimensional is a variant of Science.Constants[1]
package, with the only difference is that that the dimensional flavor
provides (where applicable) dimensionally-typed constants. The
Numeric.Units.Dimensional[2] wrappers allow to write type-safe
formulas, for example all of this will successfully type-check:
~$ ghci -XNoImplicitPrelude λ= import Numeric.Units.Dimensional.Prelude λ= import Science.Constants.Dimensional λ= massOfProton + massOfElectron 1.673532715291e-27 kg λ= massOfProton / massOfElectron 1836.1526719486646
But this will not:
λ= massOfProton / massOfElectron + planckConstant
<interactive>:10:14:
Couldn't match type `Numeric.NumType.Pos
(Numeric.NumType.Pos Numeric.NumType.Zero)'
with `Numeric.NumType.Zero'