$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Peder Holt (peder.holt_at_[hidden])
Date: 2005-09-21 01:58:49
On 9/20/05, Cromwell Enage <sponage_at_[hidden]> wrote:
> Scattered throughout the metamath library are template
> specializations of numeric metafunction classes like
> the following:
> 
> template <>
> struct times_impl<
>     integral_c_tag
>   , metamath::double_c_tag
> >
> {
>     ...
> }
> 
> The purpose of mpl::numeric_cast<> (or
> BOOST_MPL_AUX_NUMERIC_CAST) is to render such
I didn't know about that. Thanks.
> specializations unnecessary.  I understand that if
> template instantiation overhead is a problem then the
> current situation is okay, but if we start
> implementing more numeric metatypes such as
> metamath::float_ and/or metamath::long_double_, then
> the net increase in code size will become an issue.
> 
> Also included in the last update of my math sublibrary
> are files from the metamath library that I modified to
> make use of BOOST_MPL_AUX_NUMERIC_CAST:
> *  In <boost/metamath/double/double.hpp> I modified
> double_c_tag so that it inherits from
> boost::mpl::int_<8> (an arbitrary constant higher than
> zero).
> *  In <boost/metamath/double/integral_to_double.hpp> I
> added a template specialization of
> BOOST_MPL_AUX_NUMERIC_CAST that uses
> integral_to_double<>.
> *  In the other files I deleted the redundant
> specializations.
> 
> Let me know what you think.
Definitely an improvement.
Perhaps it would be a good idea to move the entire metamath/double
implementation to the mpl/math directory?
Regards,
Peder
> 
>                               Cromwell D. Enage
> 
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
> _______________________________________________
> Unsubscribe & other changes: http://listarchives.boost.org/mailman/listinfo.cgi/boost
>