Mindset of the D team vs the Rust team
Bruno Medeiros via Digitalmars-d
digitalmars-d at puremagic.com
Fri Mar 25 10:42:13 PDT 2016
On 24/03/2016 17:50, Andrei Alexandrescu wrote:
> On 03/24/2016 12:50 PM, Bruno Medeiros wrote:
>> And this is one of the reasons why I've essentially moved from D to
>> Rust.
>
> It would be interesting to share a few thoughts about your experience
> with Rust if you have the time. Thanks! -- Andrei
>
>
If you're looking for an experience of someone who moved to writing a
significant code base in Rust, that's not me. The most Rust code I've
written so far is just this https://github.com/RustDT/Rainicorn - about
1-2 man-weeks of effort. and I don't even consider myself proficient in
Rust yet. (it's damn complicated to master!)
What I meant with my comment above is that I've moved my *time and
effort investment* from D to Rust, but that doesn't mean the investment
was writing D or Rust code directly. Rather it has more to do with
projects like DDT (https://github.com/DDT-IDE/DDT), a project I've
worked on and off since 2008, but fairly intensively in the last 4-5 few
years. The DDT IDE has its own D parser and semantic engine (for code
completion, find definition, etc.), that I built from scratch, and have
been improving throughout these years. About a year ago or so, I was on
the verge of massive improvements in this engine.
On one hand it would begin to support template instantiation (not
perfectly, but enough to support code completion well enough in the
majority of cases). Most of the groundwork necessary to have this
analysis work in a lazy and incremental way - such that it would perform
well under the interactive nature of an editor - was done already.
Another thing nearly completed was refactoring the engine out of Eclipse
itself, so that it could be run externally, as a daemon process. In a
way quite similar to DCD, Go oracle, RLS, etc. The groundwork for all
this was done (also implementing caching, etc.). I think this would have
been quite interesting because with the template improvements above, the
DDT engine would have been fairly more advanced than DCD currently, and
be available to other D IDEs/editors (especially since Eclipse is not
that popular nowadays, and I'm the first admit, fairly so - Eclipse
sucks in certain regards)
I was already a bit worried 2-3 years ago when Go came into the scene.
It would definitely take a bit of mind-share out of D, but like you
said, Go is not really a competitor to D, so it wasn't that significant...
But then queue Rust coming in to the scene, and essentially I rapidly
lost my motivation to work in D-specific tools once I looked more into
Rust.
DDT will still be maintained, but only because I've refactored the
IDE-generic code into a language-agnostic framework, and built
https://github.com/RustDT/RustDT and
https://github.com/GoClipse/goclipse with it. But I won't be working on
the DDT semantic engine anymore, as far as things stand.
--
Bruno Medeiros
https://twitter.com/brunodomedeiros
More information about the Digitalmars-d
mailing list