On Saturday, 30 April 2022 at 07:05:28 UTC, Paulo Pinto wrote:
> On Friday, 29 April 2022 at 19:10:32 UTC, Walter Bright wrote:
> On 4/29/2022 11:26 AM, Paulo Pinto wrote:
> > Those were interpreters first and added native code generation later. D did is the other way around, and the native code generating compilers started doing it soon afterwards.
Decades before D was even an idea.
Again, SIGPLAN.
So why did other native languages suddenly start doing it after D did to the point of it being something a language can't skip anymore?
They didn't, they got inspired by those that preceded D, you just want to believe D was the cause.
Walter may be suffering from a bit of confirmation bias, but aren't you doing the same thing?
You are arguing that in the sequence A, B, C, D, E, ...
where (let's say, using your own examples):
A (Lisp, 1962) .., B(Interlisp, 1983), C(Allegro Common, 1985), ... D(DMD), E, ...
...you are arguing that it is impossible that some feature(s) of E could have been inspired by D, only by prior languages (any or some combination of A, B & C .. and others preceding D). How do you know they only (to quote you) "got inspired by those that preceded D"?
Walter's original quote was "Other languages have taken inspiration from D, such as ranges and compile time expression evaluation."
So 'E' above is "other languages" with "ranges and compile time expression evaluation".
So let's see - I can quote from this 2013 ACCU article named "C++ Range and Elevation" 1, which references a talk by Andrei in 2009:
"Back in 2009, Andrei Alexandrescu gave a presentation at the ACCU Conference about Ranges. The short version is that although you can represent a range in C++98 using a pair of iterators, the usage is cumbersome..."
"And all that’s just using the iterators the C++ Standard Library gives you; defining your own iterator is notoriously complex. So, Andrei introduced a much simpler – and more powerful – abstraction: the Range [ Alexandrescu09 ]"
"There have been a few attempts to implement Andrei’s ideas in C++ (he implemented them for D, and they form the basis of the D Standard Library)...etc..."
So, articles in relation to C++ mention prior work done by Andrei on ranges, mention attempts to achieve the same in C++, mentions the difficulties, etc... and this was all way back in 2013.
And this, according to you, had zero impact on proposals in C++ regarding ranges?
Similarly to Walter's assertion (without evidence), aren't you just asserting the opposite (also without evidence)? I mean, let alone any other languages, how do you know this for certain just about C++?