From owner-freebsd-current@FreeBSD.ORG Wed Dec 19 14:07:00 2012 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 096C8BE7; Wed, 19 Dec 2012 14:07:00 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail05.syd.optusnet.com.au (mail05.syd.optusnet.com.au [211.29.132.186]) by mx1.freebsd.org (Postfix) with ESMTP id 8814D8FC14; Wed, 19 Dec 2012 14:06:58 +0000 (UTC) Received: from c122-106-175-26.carlnfd1.nsw.optusnet.com.au (c122-106-175-26.carlnfd1.nsw.optusnet.com.au [122.106.175.26]) by mail05.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id qBJE6mBV001435 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 20 Dec 2012 01:06:51 +1100 Date: Thu, 20 Dec 2012 01:06:48 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Poul-Henning Kamp Subject: Re: API explosion (Re: [RFC/RFT] calloutng) In-Reply-To: <16439.1355922282@critter.freebsd.dk> Message-ID: <20121220005706.I1675@besplex.bde.org> References: <50CF88B9.6040004@FreeBSD.org> <20121218173643.GA94266@onelab2.iet.unipi.it> <50D0B00D.8090002@FreeBSD.org> <50D0E42B.6030605@FreeBSD.org> <20121218225823.GA96962@onelab2.iet.unipi.it> <1355873265.1198.183.camel@revolution.hippie.lan> <14604.1355910848@critter.freebsd.dk> <15882.1355914308@critter.freebsd.dk> <20121219221518.E1082@besplex.bde.org> <16439.1355922282@critter.freebsd.dk> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.0 cv=e5de0tV/ c=1 sm=1 a=5xuQJAhXp8AA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=o_YUZdvV9usA:10 a=sKz94c0OIJE1EZh3uQcA:9 a=CjuIK1q_8ugA:10 a=bxQHXO5Py4tHmhUgaywp5w==:117 X-Mailman-Approved-At: Wed, 19 Dec 2012 14:20:12 +0000 Cc: Davide Italiano , Ian Lepore , Alexander Motin , phk@onelab2.iet.unipi.it, freebsd-current , Bruce Evans , "freebsd-arch@freebsd.org" X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2012 14:07:00 -0000 On Wed, 19 Dec 2012, Poul-Henning Kamp wrote: > -------- > In message <20121219221518.E1082@besplex.bde.org>, Bruce Evans writes: > >>> With this format you can specify callouts 68 years into the future >>> with quarter nanosecond resolution, and you can trivially and >>> efficiently compare dur_t's with >>> if (d1 < d2) >> >> This would make a better general format than timevals, timespecs and >> of course bintimes :-). > > Except that for absolute timescales, we're running out of the 32 bits > integer part. Except 32 bit time_t works until 2106 if it is unsigned. > Bintimes is a necessary superset of the 32.32 which tries to work > around the necessary but missing int96_t or int128_t[1]. > > [1] A good addition to C would be a general multi-word integer type > where you could ask for any int%d_t or uint%d_t you cared for, and > have the compiler DTRT. In difference from using a multiword-library, > this would still give these types their natural integer behaviour. That would be convenient, but bad for efficiency if it were actually used much. Bruce