On Thursday, 2 July 2015 at 18:28:50 UTC, Russel Winder wrote:
On Tue, 2015-06-30 at 18:20 +0000, John Colvin via Digitalmars-d

Ditched distutils in favour of dub. This is easier for me to maintain and fits much better with the rest of the D ecosystem

I am not convinced by this, though cleary my feeling carry no weight in decision making :-)

For building C, and C++ extension (and indeed Chapel ones) it is assumed distutils will be used, allowing for:

        python3 setup.py build

        python3 setup.py install

SCons can do this but every one demands distutils. Can dub really replace distutils for installing extensions as well as building them? Will people installing extensions be prepared to switch to a non -standard system? Whilst perhaps they should, they won't. I fear that without a distutils installation, the extension will never be installed outside the development team. It's not the D community that must be convinced, it is the Python one.

As an addendum: not many people prefer to do non system type things in C than a higher level language when time is money. So the mindset is you build a C extension to address the worst bits where Python's true colours shine through (ie when you are in a tight loop within Python interpreter and not spending most of the time in its C libraries. Or writing C glue to connect Python to another library.

In my view, D is different. I would rather write in D than Python, and to me it's much better Tor doing serious work. Even for parsing a CSV I prefer it (although one could debate the point). In any case D is not especially slower to write in than Python (particularly when you include time spent getting the bugs out), and in a decent number of cases it may be more productive.

So why bother with Python at all ? Better ecosystem for charting and exploring data, and an interpreter is better suited generally for certain kinds of tasks. Also in some areas more libraries, which can be helpful to get a quick result, so that one can go back and do it properly later.

It would be v helpful to have a Datetime conversion from D. Looks like there is a macro for converting from ymd in datetime.h, so I guess one could just write some code against this API in C, D, or Cython and link it in with D so one can transfer data structures over more easily.

Reply via email to