Thread overview
From r/linux: Which language should i use/learn ?
Dec 10, 2016
Basile B.
Dec 10, 2016
Basile B.
Dec 10, 2016
bachmeier
Dec 10, 2016
Basile B.
Dec 10, 2016
Chris Wright
Dec 11, 2016
sarn
Dec 12, 2016
Chris Wright
Dec 12, 2016
Tobias Müller
Dec 12, 2016
eugene
December 10, 2016
So I've proposed D

https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/db0mvy1/

And I've hit a Rust user. The punch is

https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/dawqu9i/

Fell free to contribute on reddit

https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/
December 10, 2016
On Saturday, 10 December 2016 at 16:09:53 UTC, Basile B. wrote:
> So I've proposed D
>
> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/db0mvy1/
>
> And I've hit a Rust user. The punch is
>
> https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/dawqu9i/
>
> Fell free to contribute on reddit
>
> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/

The second link should be

https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/

the one i put in first post is only a comment, in case you dont know reddit yet.
December 10, 2016
On Saturday, 10 December 2016 at 16:16:54 UTC, Basile B. wrote:
> On Saturday, 10 December 2016 at 16:09:53 UTC, Basile B. wrote:
>> So I've proposed D
>>
>> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/db0mvy1/
>>
>> And I've hit a Rust user. The punch is
>>
>> https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/dawqu9i/
>>
>> Fell free to contribute on reddit
>>
>> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/
>
> The second link should be
>
> https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/
>
> the one i put in first post is only a comment, in case you dont know reddit yet.

Funny when I read comments about how Rust is popular. Confusing HN and Reddit upvotes with use. How much large enterprise use of Rust is there? Just a guess that it's still rounding error in the measurement of Java and C++ usage.
December 10, 2016
On Saturday, 10 December 2016 at 16:59:31 UTC, bachmeier wrote:
> On Saturday, 10 December 2016 at 16:16:54 UTC, Basile B. wrote:
>> On Saturday, 10 December 2016 at 16:09:53 UTC, Basile B. wrote:
>>> So I've proposed D
>>>
>>> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/db0mvy1/
>>>
>>> And I've hit a Rust user. The punch is
>>>
>>> https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/dawqu9i/
>>>
>>> Fell free to contribute on reddit
>>>
>>> https://www.reddit.com/r/linux/comments/5hiva7/which_language_should_i_uselearn/
>>
>> The second link should be
>>
>> https://www.reddit.com/r/rust/comments/5h0s2n/what_made_rust_more_popular_than_d/
>>
>> the one i put in first post is only a comment, in case you dont know reddit yet.
>
> Funny when I read comments about how Rust is popular. Confusing HN and Reddit upvotes with use. How much large enterprise use of Rust is there? Just a guess that it's still rounding error in the measurement of Java and C++ usage.

The must funny thing is that the guy who gets the most upvotes for this on r/rust is a pythonist: https://www.reddit.com/user/K900_ .No joke you go back in his history up to 1800 comments they are are still in: https://www.reddit.com/r/learnpython/
December 10, 2016
It's always a bit weird when people talk about "resources" as a unification of memory, files, sockets, etc. My programs exist to fill memory and then push bits of memory around. At least 99% of my "resource" usage is heap objects. If it gets slightly harder to deal with memory but utterly trivial to deal with every other type of resource, that's a net loss.
December 11, 2016
On Saturday, 10 December 2016 at 22:55:22 UTC, Chris Wright wrote:
> It's always a bit weird when people talk about "resources" as a unification of memory, files, sockets, etc. My programs exist to fill memory and then push bits of memory around. At least 99% of my "resource" usage is heap objects. If it gets slightly harder to deal with memory but utterly trivial to deal with every other type of resource, that's a net loss.

But if your performance is hosed because you're leaking database connections, "99% of your resources" being heap objects means absolutely nothing.
December 12, 2016
On Sun, 11 Dec 2016 22:47:21 +0000, sarn wrote:

> On Saturday, 10 December 2016 at 22:55:22 UTC, Chris Wright wrote:
>> It's always a bit weird when people talk about "resources" as a unification of memory, files, sockets, etc. My programs exist to fill memory and then push bits of memory around. At least 99% of my "resource" usage is heap objects. If it gets slightly harder to deal with memory but utterly trivial to deal with every other type of resource, that's a net loss.
> 
> But if your performance is hosed because you're leaking database connections, "99% of your resources" being heap objects means absolutely nothing.

Okay, and D gives me sufficient tools to not leak database connections under typical workflows. So does C#. So does Python. So does Java, these days. The last time it's been even vaguely annoying for me was with nodejs, thanks to callback hell, and even then it was only an annoyance.

The only type of resource I have to deal with that isn't a database connection or memory is a socket. They don't go out of scope before they're closed. Ever. So that automatic resource cleanup stuff doesn't even help there.

My handling of non-memory resources that require any sort of cleanup takes up like 3% of my code, constrained to two files. (I measured.) So it's going to be right quick for me to isolate any problems.

Rust is a solution to a problem that's already solved, as far as I'm concerned. If I had a significantly different use case, I might see more benefit, but at present I don't.
December 12, 2016
Chris Wright <dhasenan@gmail.com> wrote:
> Okay, and D gives me sufficient tools to not leak database connections under typical workflows. So does C#. So does Python. So does Java, these days. The last time it's been even vaguely annoying for me was with nodejs, thanks to callback hell, and even then it was only an annoyance.

TBH, IDisposable/AutoClosable is just a PITA. It's like going back to manual memory management and doesn't work at all for shared ownership.

> The only type of resource I have to deal with that isn't a database connection or memory is a socket. They don't go out of scope before they're closed. Ever. So that automatic resource cleanup stuff doesn't even help there.

Another kind is wrapping non-threadsafe FFI object structures, which are
actually also memory.
Because of finalizers running in a different thread, you cannot just rely
on the GC but have to make everything either synchronized or IDisposable
(or a combination thereof).
It's not impossible but requires some serious thought and overhead.

> My handling of non-memory resources that require any sort of cleanup takes up like 3% of my code, constrained to two files. (I measured.) So it's going to be right quick for me to isolate any problems.

The problem is not where the code is written but where it is used
(transitively).
Tools like IDisposable are contagious and infect everything that's using
it.



December 12, 2016
On Saturday, 10 December 2016 at 16:09:53 UTC, Basile B. wrote:

> And I've hit a Rust user.

why did you do that?