Is D a good choice for embedding python/octave/julia

Bastien via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sun Mar 13 06:02:16 PDT 2016


Hi, apologies for what may be a fairly obvious question to some.

## The background:
I have been tasked with building software to process data output 
by scientific instruments for non-experts - basically with GUI, 
menus, easy config files (JSON or similar) - and the ability to 
do some serious number crunching.

My background is python/octave and would be happy building it in 
python (or god forbid, even octave), but it would end up clunky 
and slow once ported to a standalone executable. Hence why I'm 
looking at other languages. D caught my eye.

## The problem:
The sticking point is unless I commit the rest of my life to 
maintaining this software, I can't write it all in D. The 
algorithms change/are improved yearly; the output format from the 
instrument changes once in a while and therefore these need to be 
easily scripted/modified by other (non-programming) scientists 
and the community that only really know python and octave.

Essentially I'd like a D front end, and a D back-end that does 
most of the memory and data management but calls and interprets 
.py, .m and/or .jl scripts (python, matlab, julia) to know how to 
treat the data. This leaves the py/m/jl scripts visible to be 
edited by the end user.

## The question:
Can it be done?
Does this entirely defeat the point of using D and I should just 
code it in python because of the added overheads?


Thanks for your help!
B





More information about the Digitalmars-d-learn mailing list