June 10, 2015
I'm not really familiar with Go, Nim, or Crystal, but I spent some time learning about Rust yesterday. I thought it was pretty interesting. In particular,
1) The GC is optional (memory safety is enforced by the type system and #2).
2) Smart pointers with separate operators and support for reference counting.
3) Immutability by default. Someone (somewhere) made an interesting point that it can be conceptually convenient to have the most restrictive choice as the default. I'm not sure I agree with that (maybe the most common choice used in good code), but at least immutability by default it can be helpful for concurrent programming.

All of the above seems to have a downside too
1) The memory safety stuff is pretty confusing. Move and copy both use the equality operator, but you're not always able to use it depending on the type. I think a separate move operator would clear up some of the confusion. I also didn't really get a good handle on how borrowing and lifetimes worked, but it seemed in need of a simpler explanation.
2) The plethora of options for smart pointers and reference counting
2) No prefix operators like ++a. Perhaps a consequence of immutability.
June 10, 2015
On Wednesday, 10 June 2015 at 17:34:48 UTC, deadalnix wrote:
> On Wednesday, 10 June 2015 at 15:13:41 UTC, Brian Rogoff wrote:
>> On Wednesday, 10 June 2015 at 15:09:21 UTC, anonymous wrote:
>>> On Wednesday, 10 June 2015 at 15:08:08 UTC, anonymous wrote:
>>>> any community dumb enough to buy merchandise with a programming language's name on it is full of idiots.
>>>> bye.
>>>
>>> p.s., Nim has the absolute worst community out of any of these languages.
>>> http://slashdot.org/comments.pl?sid=6771453&cid=48860921
>>
>> You're not doing the D community any great credit with this post, either. Try and stay classy.
>
> Translation: "Let me try to shame you because I don't have any actual argument..."

Stick with your day job and leave mind reading and translation to experts! :-)

What's the actual argument? Is cherry picking comments from unmoderated fora and posting them here in an effort to put down some other language community supposed to be good behavior, or rather rude and hypocritical? I say the latter, and the general way to deal with rude behavior is to point it out, what you seem to believe is 'shaming'. If you don't think that was rude, we simply disagree.

The Rust community is probably the absolute best because tolerance for that is near zero. Too much I think, but perhaps they're right and it's for the best.

June 10, 2015
On 6/10/15 10:54 AM, Brian Rogoff wrote:
> The Rust community is probably the absolute best because tolerance for
> that is near zero. Too much I think, but perhaps they're right and it's
> for the best.

I'm glad to notice the tone of posts here, say, after DConf has improved substantially. -- Andrei
June 10, 2015
On Wednesday, 10 June 2015 at 17:34:55 UTC, jmh530 wrote:
> 3) Immutability by default. Someone (somewhere) made an interesting point that it can be conceptually convenient to have the most restrictive choice as the default. I'm not sure I agree with that (maybe the most common choice used in good code), but at least immutability by default it can be helpful for concurrent programming.

I am one of those that think that a language should allow you to
do whatever you want, but be restrictive by default. For example
immutability unless you explicitly ask for mutability (like in
Rust). D sort of has the ability to do this, but it's sort of
backwards due to it's defaults. For instance D is mutable by
default (an inherited trait due to the C subset of the language),
with the ability to explicitly mark values as immutable. Another
backwards annotation is nothrow. I don't really care if something
doesn't throw, I care when it throws, because then I have to do
something (or my program may crash unexpectedly). Even if the
enforcement is kind of there (although unannotated functions can
do whatever), it would have been a better guarantee to disallow
this by default.

Then you have purity, garbage collection and final which also
seem backwards from what they should have been (although better
arguments can be made for these than immutability and nothrow). D
did get thread local storage correct, but I think people are
starting to get on board with having restrictions by default
because it prevents bugs (and the annotations are grepable). Kind
of like what Rust is doing. If this is the case, D might find
itself being discarded in favor of languages that offer better
guarantees.

Just a thought from a random spectator ;)
June 10, 2015
On Wednesday, 10 June 2015 at 17:54:15 UTC, Brian Rogoff wrote:
> The Rust community is probably the absolute best because tolerance for that is near zero. Too much I think, but perhaps they're right and it's for the best.

It's always a good idea to not go personal, but I think they overdo it when you're not allowed to write "he" as a general term because it is gender specific. I suspect the design of Rust suffers a bit from group think:

http://en.wikipedia.org/wiki/Groupthink
June 10, 2015
On Wednesday, 10 June 2015 at 18:18:55 UTC, Ola Fosheim Grøstad wrote:
> It's always a good idea to not go personal, but I think they overdo it when you're not allowed to write "he" as a general term because it is gender specific.

That's actually a good idea, you might not have noticed it, but I rarely use "he" alone as a general term and I notice it when other people do. Little things like this in language can make a difference in people's feelings and cause discomfort in the environment.
June 10, 2015
On Wednesday, 10 June 2015 at 18:41:56 UTC, Adam D. Ruppe wrote:
> That's actually a good idea, you might not have noticed it, but I rarely use "he" alone as a general term and I notice it when other people do. Little things like this in language can make a difference in people's feelings and cause discomfort in the environment.

Sure, follow your own ethics, but that won't work in an international environment as a rule without coming off as censorship. You cannot force people globally to follow a local culture. I also try to cut down on the term "you" as a general term since people might think I mean them personally.

At some point you just have question intent if there is a misunderstanding, rather than control every expression or else everything becomes "it":

"A bad programmer create bugs when it edits its files...".

And if people force you to write "it", it is quite reasonable to wonder what else they strongly object to so you better just stay silent. I really do try to cut down on the term "you"?
June 10, 2015
On 06/10/2015 09:34 AM, Joakim wrote:
> On Wednesday, 10 June 2015 at 16:22:51 UTC, Idan Arye wrote:
>> Wasn't LLVM supposed to solve that, being a "virtual machine" for
>> compilation to low level native code?
>
> May still be possible, Apple just announced that the default format to
> submit apps for iOS will be bitcode from now on, which people are
> speculating is some form of llvm bitcode:
>
> http://arstechnica.com/apple/2015/06/app-thinning-will-be-a-major-boon-for-8gb-and-16gb-iphones-and-ipads/
>
>
> Apple will then compile the bitcode for you on their servers, before
> sending the final binary to users.

I wonder whether they will inject code for Natural Security of Apple users. :p

Ali

June 10, 2015
On 06/10/2015 09:05 PM, "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= <ola.fosheim.grostad+dlang@gmail.com>" wrote:
> ...
>
> At some point you just have question intent if there is a
> misunderstanding, rather than control every expression or else
> everything becomes "it":
>
> "A bad programmer create bugs when it edits its files...".
>

Just use plural, it's what you mean anyway.

"Bad programmers create bugs when they edit their files...".

> And if people force you to write "it", ...

"it" doesn't seem appropriate.

http://en.wikipedia.org/wiki/Gender-specific_and_gender-neutral_pronouns#It_and_one_as_gender-neutral_pronouns

"However, when not referring specifically to children, "it" is not generally applied to people, even in cases where their gender is unknown."
June 10, 2015
On Wednesday, 10 June 2015 at 19:22:37 UTC, Timon Gehr wrote:
>
> Just use plural, it's what you mean anyway.

I was being ironic...

Variation is good for language. Artificial constraints like "gender neutral terms" harm expression. It is not a reasonable policy making arena in non-official contexts. But even then the best option is to vary, sometimes use "she", sometimes "he", sometimes "thin", sometimes "fat", sometimes "black", sometimes "white", etc...

But the real point is _culture_. Most people are happy they make themselves understood in a foreign language.