Implementing Half Floats in D

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Thu Jan 31 05:41:14 PST 2013


On 1/31/13 5:18 AM, Don wrote:
> std.numeric is not superficially flawed, it's fundamentally flawed. What
> is it for? What is its theme? The problem is, std.numeric is one of the
> few good names which are left as a possible package name, after C
> insulted the mathematical community by creating a module called 'math'.

Guilty as charged. I've put stuff in std.numeric as I was working on my 
thesis. I recall you added some stuff there too. As I'm sure you 
remember the state of D in 2007 was rather different than that of today. 
Overall no need to get agitated here, we're all on the same boat and 
aiming for the same shore.

Let's see what we have there:

entropy
CustomFloat
kullbackLeiblerDivergence
Fft
gapWeightedSimilarityIncremental
gapWeightedSimilarity
gapWeightedSimilarityNormalized
FPTemporary
findRoot
euclideanDistance
dotProduct
cosineSimilarity
gcd
jensenShannonDivergence
normalize
secantMethod

The general theme is obvious - numeric algorithms and data structures. 
Many are obvious and with obvious utility to one interested in numerics: 
entropy, various distance and similarity measures. I think you wrote 
findRoot.

The gapWeightedSimilarity algorithms are string kernels. They are 
somewhat niche but quite powerful to anyone interested in string 
similarity (technically they are string edit distance on steroids). They 
might belong in std.string but I figured they have enough numeric 
algorithm flavor to put them in there.

So let's itemize the grievances and see how we can sort this out.


Thanks,

Andrei


More information about the Digitalmars-d mailing list