I am working on a module that uses bounded intervals. It would be great if
the result were easy to use with other's packaged floating-point based or
Real derived types.
They work like stretchy Float64s, and support arith, exp, log, [a]trig[h],
and cdf+pdf+quantile for univariate continuous distributions.
Is there any type hierarchy modification with some generalized code that
would make "conversion to __ not found" happen less when using
this as if it were Float64 with others' floating point based types that are
not dependant on sizeof()?
```julia
abstract EnhancedFloat <: Real abstract AnyFlexFloat <: EnhancedFloat #
FlexFloat
is a (lo,hi) bounded interval # either or both bounds may be Closed(Cl) or
Open(Op) # e.g. ClOp(lo,hi) is a ClOpen interval.
abstract OpOp <: AnyFlexFloat abstract ClOp <: AnyFlexFloat abstract OpCl
<: AnyFlexFloat abstract ClCl <: AnyFlexFloat typealias WorkFlex
AnyFlexFloat; # was Union{ClCl,ClOp,OpCl,OpOp} typealias WorkFloat
Union{Float64,Float32}; immutable FlexFloat{T<:WorkFlex, F<:WorkFloat} # <:
Real does not seem to help much lo::F hi::F end ```