HTOD
lobo via Digitalmars-d
digitalmars-d at puremagic.com
Thu Aug 24 00:53:01 PDT 2017
On Thursday, 24 August 2017 at 05:56:02 UTC, Timothee Cour wrote:
> On Wed, Aug 23, 2017 at 10:38 PM, lobo via Digitalmars-d
> <digitalmars-d at puremagic.com> wrote:
>> On Thursday, 24 August 2017 at 01:51:25 UTC, Timothee Cour
>> wrote:
>>>>
>>>> [...]
>>>
>>>
>>> nim:
>>> it supports both targetting C++ (as well as C or javascript)
>>> and also
>>> calling C++ via foreign function interface, eg here are some
>>> links:
>>> https://github.com/nim-lang/Nim/wiki/Playing-with-CPP--VTABLE-from-Nim
>>>
>>> https://stackoverflow.com/questions/29526958/wrapping-nested-templated-types-in-nim https://forum.nim-lang.org/t/1056
>>>
>>> for D, there's a project to support full C++ natively using
>>> clang library is calypso, unfortunalty I haven't been able to
>>> use it, either from OSX or ubuntu: it's blocked by
>>> https://github.com/Syniurge/Calypso/issues/41, hoping someone
>>> can help here!
>>>
>>>
>>>
>>> On Wed, Aug 23, 2017 at 3:57 PM, lobo via Digitalmars-d
>>> <digitalmars-d at puremagic.com> wrote:
>>>>
>>>> [...]
>>
>>
>> Thanks, I'll revisit Nim. As a team we're testing new
>> languages as a larger plan to switch from C++. Nim we struck
>> off 6 months ago because we found it not quite production
>> ready.
>>
>> bye,
>> lobo
>
> Would love to hear more about your reasoning as I'm also
> occasionally re-visiting it, do you have any writeup?
No write up I can release at this stage because there are some
business confidential aspects in the final report. We're ~30
Python, Java and C++ programmers.
Our testing involved 1 developer month in each language
implementing scripts to parse into data, a basic library read and
interpolate data on a 3D regular grid, a small GUI application to
display regular grids and tool chain testing where we produced a
metric tonne of autogenerated code to see how well we could
integrate into our existing build infrastructure and what build
times would be like.
From memory Nim had four main issues:
a) 4 compiler ICEs. Our metric was >2 during testing and it was
out, so this alone blew Nim away; we were deliberately harsh. D
had 1 ICE that was a known issue with core team member comments
on the bug report.
b) Nim compilation was slower than other languages (we count the
C compilation as part of the same package)
c) Our Python devs found Nim was not Pythonic enough compared to
other languages for hack n' slash quick scripts while keeping it
maintainable and clean.
d) Our developers (Python, Java and C++ people) preferred other
language syntax
bye,
lobo
More information about the Digitalmars-d
mailing list