D future ...
Benjiro via Digitalmars-d
digitalmars-d at puremagic.com
Tue Dec 20 02:48:33 PST 2016
On Tuesday, 20 December 2016 at 09:33:22 UTC, qznc wrote:
> What did you expect with a rant like that?
A rant... Well. Rants have a background.
> You vented your anger.
Actually, i did not vent any anger until this morning when i
noticed the wiseass response. All the points i wrote yesterday
are items that actually bother a lot more people. But those same
people who complain about it, always get shutdown with that
typical: Do it yourself response / Improve the standard library /
...
Documentation:
--------------
If they want some concrete examples, here are few:
https://dlang.org/library/std/socket/tcp_socket.html
https://doc.rust-lang.org/std/net/struct.TcpListener.html
Notice how much more clean the Rust documentation is. I am only
pulling that example because its something i looked up right now.
Rust:
* Example ready on the page.
* Linked to a run environment.
* New function listed below, with versioning! So you know exactly
what function will work with what version your running.
* Most function or variables link to pages that again have
examples on usage.
* Cleaner / Easier to read.
Dlang:
* A long list of functions/classes/...
* Most function or variables link to pages that for 80% simply
state the same information. 20% has expanded information or
examples.
More:
https://doc.rust-lang.org/std/net/struct.UdpSocket.html
https://dlang.org/library/std/socket/udp_socket.html
...
And stated said, i have zero experience with Rust. Never ran it,
just looked at a few over complicated examples in the past ( it
actually easier then expected with proper example ).
So it took me about 30 minutes to install, figure out why the
example did not work ( return value ) and got it running.
How long will it take anybody to create a tcp socket in D,
without resorting to google search and looking into a lot of
forum posts.
Answer: A few hours because i did the same work a few days ago.
Some of the forum examples are people asking for help with mixed
results. From there you need to figure things out. Not everything
works because some posts are so old, that the information is
outdated.
> Rust probably is aligned more than anyone with these goals at
> the moment but every time > I try to learn rust my head hurts
> and it's not enjoyable.
Actually, just playing around with it and you can configure more
then you think. I got very fast annoyed with the enforcement of
no parens on if statements ( it looks cleaner / easier to read
with parens. My opinion of course ). Thinking by myself: Hello Go
again!
But it only took a few minutes to figure out that you can control
the warnings with #[warn(unused_parens)] > [allow(unused_parens)]
> 1. Evolve the GC like Go has.
I fear that will require a massive rewrite / totally new GC. The
change that will happen is very low.
> 2. No overhead calling C libraries.
There will always be some overhead calling C libraries. There is
the whole conversion of types etc.
> 3. Easily composable libraries.
... Did not see a big issue with creating your own libraries in
D. Or do you mean shared libraries. Yea, that is a massive
difference. Go is massive more easy ( especially the 1.8 beta ).
> 4. Good IDE support.
I know the feeling. How many hours struggling to try and get my
favorite IDE's to cooperate with Dlang support. Too many are
simply out of date / unsupported. Or at best have basic syntax
support and that is it.
The best option right now is simply Visual Studio Code. Where
WebFreak001 did a lot of great work on making it more easy (
plenty of issue at times but relative more easy ). The problem
being that VSC is a more pure local editor and missing a lot of
features ( SFTP comes to mind ... the 3th party plugin solution
have issues ).
I have gone down the list of editors and its a mess of
unsupported, incomplete or outdated plugins. Or editors with
lacking features. Probably put in a dozen hours or more testing
them all out. And VSC is really the only properly supported one
with the full feature set.
More information about the Digitalmars-d
mailing list