On Wednesday, 14 March 2018 at 22:17:49 UTC, jmh530 wrote:
On Wednesday, 14 March 2018 at 20:21:15 UTC, Sam Potter wrote:

Sure. The key word in my statement was "ideally". :-)

For what it's worth, there is already an "informal spec" in the form of the high-level interface for numerical linear algebra and sci. comp. that has been developed (over three decades?) in MATLAB. This spec has been replicated (more or less) in Julia, Python, Octave, Armadillo/Eigen, and others. I'm not aware of all the subtleties involved in incorporating it into any standard library, let alone D's, but maybe this is an interesting place where D could get an edge over other competing languages. Considering that people in Python land have picked up D as a "faster Python", there might be more traction here than is readily apparent
[snip]

libmir [1] originally started as std.experiemental.ndslice (that component is now mir-algorithm). They had removed it from the std.experimental because it wasn't stable enough yet and needed to make breaking changes. I think it's doing just fine as a standalone library, rather than part of the standard library. As this thread makes clear, there's certainly more work to be done on it, but I'm sure Ilya would appreciate any feedback or assistance.

I'm sympathetic to your point about D getting an edge by having a better linear algebra experience. I came to D for faster Python/R/Matlab (and not C++), though if I need to do something quickly, I still defer to Python/R. However, if you look at the TIOBE index, R and Matlab are at 18/20. Python is quite a bit higher, but it's growth in popularity was not largely due to the Numpy/Scipy ecosystem. So while I think that D could get more traction if libmir turns itself into a premiere linear algebra library, we should be realistic that linear algebra is a relatively small segment of how people use programming languages. Maybe these firms might be willing to pay up for more support though...(if a user could replace pandas with libmir, I would imagine some financial firms might be interested).

[1] https://github.com/libmir

Thanks for the information, and great points made.

I think it's worth mentioning Julia's rapid development. I'm not sure exactly how much traction Julia is getting in different sectors, but I've heard that it has a certain appeal by dint of it being open source (no need to buy expensive MATLAB seats). Julia looks like it could kill MATLAB. I think D has no chance of competing here (beyond being a backend for libraries) without a better scientific experience. OTOH, the fact that D doesn't have a REPL may kill it from the get go (hard to do exploratory data analysis). As you said, you still defer to Python/R/etc---I have a hard time seeing myself using a language like D for everything I work on.

This is getting pretty derailed from the main subject, sorry! I would like to let Ilya and others continue the original discussion now.

Reply via email to