From maechler at stat.math.ethz.ch  Tue Apr 29 10:41:19 2014
From: maechler at stat.math.ethz.ch (Martin Maechler)
Date: Tue, 29 Apr 2014 10:41:19 +0200
Subject: [Rd] type.convert and doubles
In-Reply-To: <1D2694C7C3A6C04AA75E11C592A882E44F886CCC@exmbx05-cdc.nexus.csiro.au>
References: <3736EC2D-7360-4AF6-BF96-5A2DF3D3EF14@warnes.net>
	<326FE12B-D6FE-471B-9E0C-10BEC0584DB7@r-project.org>
	<534860CC.2090206@gmail.com>
	<17B09E7789D3104E8F5EEB0582A8D66F0129CED9FD8C@MSGRTPCCRF2WIN.DMN1.FMR.COM>
	<CAECWziJq92keAD2sHHE7ky6CHhqatrBOONq_Vf18AHJ8GActZw@mail.gmail.com>
	<CAP01uRmdnTUgDH=sNryx9=w5Rtmw3b+8KiZOWPg48r6rc86ssQ@mail.gmail.com>
	<CAECWziKLBRjRNpneVJ2hNbTG3jF2ec6GeF9m+1S092WoufCdiQ@mail.gmail.com>
	<17B09E7789D3104E8F5EEB0582A8D66F0129CEDA0169@MSGRTPCCRF2WIN.DMN1.FMR.COM>
	<21330.29530.72292.435730@stat.math.ethz.ch>
	<A9466CB2-2B20-413D-986C-7EEC93CEC190@r-project.org>
	<21340.7717.170377.354029@stat.math.ethz.ch>
	<21342.36111.527401.91467@stat.math.ethz.ch>
	<37CEF3E8-01CA-474E-B794-4B6BCCAD0CBE@gmail.com>
	<1D2694C7C3A6C04AA75E11C592A882E44F886CCC@exmbx05-cdc.nexus.csiro.au>
Message-ID: <21343.26031.613623.397191@stat.math.ethz.ch>

>>>>>   <Mark.Bravington at csiro.au>
>>>>>     on Tue, 29 Apr 2014 08:25:41 +0000 writes:

    > [...snip...]
    > Martin Maecher wrote:

    >> > I have now committed svn rev 65507  --- to R-devel only for now ---
    >> > the above:   exact = NA  is the default
    >> > and it means  "warning + FALSE".
    >> >
    >> > Interestingly, I currently get 5 identical warnings for one
    >> > simple call, so there seems clearly room for optimization,

BTW, the above was an implicit RFC and for code proposals by
really good C programmers...


    >> >  and that is one main reason for this reason to not yet be migrated
    >> > to 'R 3.1.0 patched'.

    > Peter Dalgaard wrote:
    >> I actually think that the default should be the old behaviour. No warning, just potentially lose digits. If this gets a user in trouble, _then_ turn on the check for lost digits.

    > +1

(yes please, people chime in ... once, you can also give "-1")

    > IMO "read.table" and friends are convenience functions with somewhat of a "do what I mean" flavour, and as such their default should be to work conveniently for most cases. We typically ignore loss of precision in all sorts of numeric operations without warning. Those who do really care about that 21st digit in 'read.table' could always use 'colClasses'. With a 'digitloss' argument (but shouldn't it be column-specific? if not, is it really needed?) 

Note that the current implementation of read.table() and friends
only use type.convert() at all when there are *no* colClasses at
all,  and I think we really should not change that principled
behavior !

>  they can get what they need more easily, but the evidence seems to be that this is a rare case.

    > Mark Bravington
    > CSIRO
    > Hobart
    > Australia



[Rd] type.convert and doubles
Martin Maechler