Implementing Half Floats in D
Paul D. Anderson
paul.d.removethis.anderson at comcast.andthis.net
Fri Feb 1 11:15:32 PST 2013
On Thursday, 31 January 2013 at 17:05:50 UTC, Andrei Alexandrescu
wrote:
> On 1/31/13 10:38 AM, Don wrote:
>> The basic problem is that there are hundreds of potential
>> numeric
>> algorithms and data structures of equal importance to these
>> ones. In
>> fact, the total number of mathematical algorithms is probably a
>> substantial fraction of the total algorithms in computer
>> science!
>>
>> Even a module which contained only FFT, could be quite large,
>> once it
>> included all the important related transforms.
>
> A possible solution would be to make std.numeric a knot for
> several others, or convert it to a package.
>
>> I'm not sure that we can solve this without addressing the
>> high-level
>> question: What is the scope of Phobos?
>>
>> How big will it eventually get? Twice its current size? Ten
>> times? A
>> hundred times?
>
> I think the current trend is to go for large libraries.
>
>> Both SmallPhobos and LargePhobos are reasonable, but we do
>> have to pick
>> one. Currently we have aspects of both approaches, but they
>> aren't
>> compatible.
>
> LargePhobos. Agreed that we need to package-ize some of the
> current modules.
>
>
> Andrei
Another consideration is the process for a package to become
"standard". Current practice is to implement a package and go
through a review in this forum. That's a good thing, but I'd like
to see a more interactive approach, where the community was
involved sooner:
1. A package is proposed for future inclusion in the library.
Presumably this is done by someone with an interest in the
subject, ideally this is someone who wants to spearhead the
effort and may already have a draft implementation.
2. If there's enough interest to move forward, community members
could bicker about all the bikeshed stuff: structures, methods,
implementations, API, etc. until there's enough agreement about
what the result should look like.
3. Interested parties could collaborate on the implementation and
release.
4. There would have to be time limits. Many (most?) D projects
start with a bang but then fizzle out before they're complete.
There would need to be (monthly?) progress reviews. If the
discussion or the implementation has dwindled, a reconsideration
of the project could occur. If unsuccessful, the project would be
moved off the active list. If there is renewed interest or if
somebody else wants to take a crack at it the previous work can
be a resource, but the project should probably go back to step 1.
You all see the problem with this: the very short attention span
of the D community. But we've got a good start between the DIP
process and the review queue. The only thing really different
would be the progress reviews, which would hopefully prevent
projects falling of the end of the earth.
This is just one possibility and there are probably better ways
to do this. But I think some sort of maintenance of active
projects is needed.
Paul
More information about the Digitalmars-d
mailing list