{- | Precise Fortran value model. Note that we actually think about two different models: one storing values "machine-like" (@Machine@), one storing them "mathematically idealized" (@Idealized@). Only certain Fortran types have these split representations, namely integers and logicals. The rest have a single representation each. Both representations may be convenient in different own ways: * Machine representation is efficient, and should retain common overflow behaviours without explicitly handling them. * Idealized representation is easier to handle, and enables safe checking for overflows. The same kind algebra is performed for both, so types & kinds should match. As of 2022-08-15, idealized representation isn't properly supported -- this module simply re-exports the machine representation. -} module Language.Fortran.Repr.Value ( module Language.Fortran.Repr.Value.Machine ) where import Language.Fortran.Repr.Value.Machine