On Monday, 22 December 2014 at 13:37:55 UTC, aldanor wrote:
...

In this light, as I see it, D's main advantage is a high "runtime-efficiency / time-to-deploy" ratio (whereas one of the main disadvantages for practitioners would be the lack of standard tools for working with structured multidimensional data + linalg, something like numpy or pandas).

Cheers.

There is no lack of tools if you can integrate well with existing ones like numpy, pandas, matplotlib, etc. I think a good role for D in such an ecosystem would be implementation of algorithms.

D's excellent template system can be leveraged to help it play well with dynamically typed languages. A D module to be called from Python may be kept in source form that is compiled and specialized on demand according to argument types and the dtypes and dimensions of numpy array arguments. Specific specializations will be cached so from the second call it will not incur the 1-2 second overhead of compilation. If you only use the @safe subset there should be no danger in dynamically compiling bits of code and loading them into the address space of your session.

Reply via email to