Hacker News new | ask | show | jobs
by distsysdude 2143 days ago
> He’s aware of other languages, as he reveals in his answer to a later question. (“I think C++ can do anything Rust can do, and I would like it to be much simpler to use.”) And towards the end, he couldn’t resist noting that longevity has its advantages. “It’s highly humorous when some of the Rust people come up and accuse me of having stolen some of their ideas without acknowledging — when some of the things I did I actually did almost 40 years ago.”

Does anyone know what these accusations were? Given that C++ has been around for so long, It's incredulous to think that anyone from the Rust community can put forth such a claim.

9 comments

> It's incredulous to think that anyone from the Rust community can put forth such a claim

If you talk about something so undefined as _the Rust community_, I'm pretty sure I can claim that _someone of them_ has said pretty much anything in existence.

Like some of the "why did you not write it in Rust" bros on any forum like Reddit or here might very well have writen some utter bullshit about other languages, would not be surprised.

I'm more than half convinced that the "why did you not write it in Rust" group actually hates Rust and its a meme because those comments certainly promote a visceral hatred.
I can assure you that they exist, and they are unironic.
Today, that saddens me greatly. It seems like there are always members of any community, virtual or physical, that go to such an extreme that they provide fodder for all those who don't like the community as a whole. The Warhammer Heresy memes are just too true.
The parent and Stroustrup were both clear in saying “someone from the Rust community” and not “the Rust community”. Talking about group opinions is hard but in this case they were clear.
“Someone from the Rust community” is super vague.
Super vague as to who it was, yes. But it's really clear that it wasn't the position of the bulk of the community.
The only thing I can think of is modules, which C++20 is planing to introduce. But I would be very surprised if anyone was accusing anyone else of "stealing" ideas. It's preposterous because 1. every language copies good features from others (that's a good thing) and 2. Rust has copied a lot from C++.

I wish people wouldn't talk about one or two people with a warped view as "the community".

3. Everyone I've met from the rust community is super explicit that Rust has stolen as many good ideas that it could find, and that that is a good thing.
> Rust has copied a lot from C++.

I think this is exactly the thing: if you come from C++ it's very obvious that they drew a lot of inspiration from there (I won't use a charged term like "copied"). But I get the impression that people who got into rust without learning C++ first are largely unaware of this. Or, even if they had worked with c++ but missed the boat on raii and smart pointers.

> I wish people wouldn't talk about one or two people with a warped view as "the community".

At least in the quoted sections, they weren’t talking about the opinions of the rust community, but rather those of someone from the Rust community.

My point is that saying "Rust community" implies that this person represents the community in some way or worse, is representative of the community. Neither is true. It's just some random person with no credentials. That person is no more the Rust community than I am the HN community. Imagine how you'd feel if people made assumptions about you based on what nindalf said that one time.
C++ modules have been a thing for a long time even if the standard is being presented this year.

It is not a C++ idea anyway, older languages have had similar facilities.

Additionally, just because C++ "had it" doesn't mean it was done anywhere close to well.
Modules have existed far before rust e.g in javascript, python, Java, etc
Those are valid examples, but modules are much older than that: https://en.wikipedia.org/wiki/Modular_programming#History

It really shows Stroustrup's point on how most of these programming concepts have been around for a long time.

Rust officially credits many languages including C++: https://doc.rust-lang.org/reference/influences.html

First Mozilla introduction of Rust states:

> Rust is a language that mostly cribs from past languages. Nothing new.

http://venge.net/graydon/talks/intro-talk-2.pdf (I recommend reading the slides — they're great!)

so whoever is accusing C++ of "stealing" Rust ideas is uninformed about C++ and Rust.

It usually comes from more emotional adopters without much experience in programming languages.

You will also see some safety assertions regarding stuff that was already safe when using Ada, or any Modula or Oberon linage of programming languages.

Not everyone on Rust community tends to be like that.

Good artists copy but great artists steal :-)

Joking aside, it's funny that Bjarne did not talk about D since it seems that C++ is copying many of D nice features in later of C++ iterations for over a decade now.

And now D is copying the Rust/Cyclone ownership concept, nice!

People in the D community like to think that, but stuff like ranges is older than D, born out FP languages research and even Smalltalk had them on its collection types, then auto for type inference was already there in C with Classes, just Bjarne faced too much opposition back in the 80's.
I'm honestly wondering why he explicitly mentioned it.

Languages taking inspiration from other languages and that's normal I don't think anyone bm the people I know from the rust community (which e.g. work on the compiler and language) would do so.

That's except if you write something like a paper, in which case it's party of the proper proceeding to mention "priority art" you are aware of *even if you didn't copy it or even had the idea early but just didn't publish it.

I hope it's just some random thing he remembered thought of when causally doing the interview, because the other alternatives wouldn't make him look good.

Admitting that D even exists should embarrass the C++ committee.

Modules and contracts have taken something like 30 years combined, and they still aren't prevalent. The tried to borrow static if, but theirs is scoped and misses the point (the static if paper).

All of the aforementioned are maintained in a language that has less maintainers than C++ has committee members, with better solutions and orders of magnitude faster compile time.

Why should it? At least ISO C++ knows what they want, while D is still trying to find out to which community they should be advertising to.

I find many of the people on their forums quite nice, but D lacks a profound sense of direction and which market they want to target.

Filling multiple roles is not the same as lack of direction. D does lack direction, but that's arguably a good thing - that's why the scripting-like features can exist alongside the features which are intended for writing high performance code.

The fact that C++ is only used for performance is due to C++ being a bad language everywhere else rather than being amazing at writing high performance code. How many hours of developer productivity have been lost to slow compiles and bad metaprogramming (traits, contracts, and constexpr are emblematic of the half in half out C++ way)

Might be, but right now I don't see D ever taking off, rather going on the down slope of adoption curve, while C++ despite its warts, keeps increasing adoption thanks to AI, GPGPU shaders and driver SDKs for all major OSes.

By the way no one at Remedy is using D nowadays, while the number of studios using C# alongside C++ keeps increasing.

I am very curious too; I don’t think I’ve ever heard anyone claim this. If anything, folks talk about the debt we have to C++ for pioneering a lot of this stuff!
C++ is building something similar (and maybe with less syntactic noise aka lifetimes markers) to rust borrow checker https://www.reddit.com/r/cpp/comments/8zle4k/current_state_o...

But yeah indeed, rust borrowed more concepts (e.g RAII) from C++ than C++ borrowed from rust

Rust also borrowed concepts from Cyclone:

> The inspiration for safe borrowed references comes in two ways from the Cyclone programming language, a joint development effort by AT&T and Cornell University. The notion of a borrowed reference is adapted from Cyclone’s polymorphic restricted alias pointers. Additionally, Cyclone’s safe memory management focused on regions (which are usually arenas). In order to ensure memory safety, Cyclone pointers could be annotated with a named region qualifier preceded with a back-tick (making them look very much like Rust’s apostrophe-based lifetime annotations).

source: https://pling.jondgoodwin.com/post/lifetimes/

Any community that is large enough is going to have some less informed brash members. Communities are open big tents after all.
Yeah it's probably actually a sign of a healthy community that it has less informed members that feel safe to speak up. That's how they learn even if it can be hard to deal with.
nit: Only people can be incredulous. Well ok, dogs etc too. It means (of a person) "not wanting or not able to believe something, and usually showing this".
People are avoiding "incredible" for its dictionary meaning nowadays because it has morphed into a generic intensifier.

In a few years that will pass, and people will not say extremely silly things like "incredibly honest" anymore. But they will necessarily take up saying other equally silly things.

Thanks!! "Generic intensifier" is a very useful label, e.g. it's been driving me nuts how "literally" is used so frequently and inappropriately, on HN and other places. It's become a generic intensifier. But these words that cry wolf lose their..Ah well, this is what language evolving looks like I guess - like it's going downhill! But it's like Reutersvärd/Penrose stairs, only appearing to descend.
You are tripping over the Recency Illusion. As with almost all complained-about English usage, abuse of "literally" began (literally) centuries ago.

British newspapers regularly host shrill complaints about language degradation in the Colonies, but in every single case the reviled usage turns out to have started somewhere in England, typically before the colonials went. That shouldn't surprise: there is overwhelmingly more variability in English usage in England than the sum total in all other places.

It would not be at all surprising if "incredibly" went through a similar cycle 200 years ago. For a time, "nice" meant "stupid", before it meant "precise". For a time, "plausible" meant "implausible". Just be glad abuse of "exponentially" has fallen off.

> You are tripping over the Recency Illusion.

Maybe, or maybe it is an unprecedented recent spike. We're both guessing, I suspect.

[5 minutes research later] Well, there is this measure of the frequency of 'literally' in books in English since 1600. (Although I meant in speech and online comments)

https://books.google.com/ngrams/graph?content=literally&year...

Which does seem to possibly support the 'unprecedented spike' hypothesis! A huge surge since 1990, the largest ever, the word is now used twice as often as in books in 1990.

Looking at examples from 1800-1820, during the 2rd biggest surge, which lasted around 100 years centred on 1840,

https://www.google.com/search?q=%22literally%22&tbm=bks&tbs=...

- none of those on the first few pages of results appear to be the general intensifier kind of 'literally'.

Compare with 2019-2020, where most examples in the first few pages are the kind I've gotten so sick of lately:

https://www.google.com/search?q=%22literally%22&tbm=bks&tbs=...

I eagerly await further research in the field. :-)

You need to subscribe to Language Log, from upenn.

A modern confounder is that copy-editing activity has declined along with the cost of publication, so that misuse that previously appeared much less in print than in oral discourse now evades scrutiny. Transcripts of court testimony would give a better sense of how people spoke.

Nonetheless, from your link I find in 1812, "was literally bathed with sweat" and 1810, "it shall bruise thy head, and thou shalt bruise his heel. This between the woman and the Serpent is most literally fulfilled ."