On Thursday, 28 November 2013 at 10:30:36 UTC, Chris wrote:
There are voice analysis and speech processing toolkits like
Covarep and Voicebox (see links below) that were coded in
Matlab, because they were originally only prototypes. There has
been talk of porting them to C++. My first thought, as you
might imagine, was why not use D? However, I don't know if
there are any performance issues, especially for real time
systems (in speech recognition), talking about GC, or in fact
any other issues (number grinding etc.).
A lot of the analysis tools are based on some sort of HMM
(http://en.wikipedia.org/wiki/Hidden_Markov_model) and I think
D could handle that elegantly.
https://github.com/covarep/covarep
http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
The GC is the stop the world collector and a huge issue for real
time processing. It is one of the major drawbacks of D for use in
(near) real time software. Luckily you can get D to work without
the GC but it is a huge pain in the ass.
But given the drawbacks it may be well worth it to start with D.
The more interest in D the more likely these issues will be fixed.
Unfortunately I'm in a similar scenario and I hope that the GC
will not be an issue in the end.