May 01, 2022

On Sunday, 1 May 2022 at 15:50:17 UTC, Guillaume Piolat wrote:

>

On Sunday, 1 May 2022 at 14:36:12 UTC, Ola Fosheim Grøstad wrote:

>

Autotune is more about fashion and marketing

Things that "objectively" sounds bad can become fashionable for a limited time period (or become a musical style and linger on).

It has been just a fad for over 23 years now.

And 99.9% of the time you're listening to AutoTuned vocals you dont even know.

May 01, 2022

On Sunday, 1 May 2022 at 16:31:20 UTC, claptrap wrote:

>

and real time as far as I remember. Im not even sure phase vocoders would have been feasible on dsp hardware in those days.

It was possible. The original papers on phase vocoders discuss real time.

May 01, 2022
On 5/1/2022 3:57 AM, Paulo Pissas wrote:
> The reason I dropped D after over 6 years of using it exclusively, was a loss of belief in the direction, and the fact that after many years, not a lot had improved in regards to frictions for the busy programmer. It really felt like an enthusiasts' project, and not really an effort to build a widely adopted tool.

What friction was there that other languages you switched to did not have?
May 01, 2022
On 5/1/2022 9:31 AM, claptrap wrote:
> And 99.9% of the time you're listening to AutoTuned vocals you dont even know.

It's gotten to the point where I can tell :-)

I don't mean cranking it up to an absurd point like Cher did. I mean the subtle use of it, as it was intended.

What has happened is the *style* of singing has changed to accommodate use of autotune. This becomes most apparent if you listen to a lot of singers in the 1970s vs today. Modern singers also, since they don't have to train to be on pitch, don't seem to train to develop a good tone, either. Their voices just don't have good tone compared to 70's singers.
May 01, 2022

On Sunday, 1 May 2022 at 18:09:16 UTC, Walter Bright wrote:

>

What has happened is the style of singing has changed to accommodate use of autotune. This becomes most apparent if you listen to a lot of singers in the 1970s vs today. Modern singers also, since they don't have to train to be on pitch, don't seem to train to develop a good tone, either. Their voices just don't have good tone compared to 70's singers.

It is true that there are styles inspired (or defined) by pitch-correction, actually some singers are so nimble and pitch perfect that people refuse to believe that they don't use pitch correction! However, if you are talking doing minor adjustments in post production you would be better off using spectral tools.

Auto-tune did not invent pitch correction, the author of the software didn't discover something obvious as you claimed, it might have been the first marketable successful product, but the concept was there beforehand and was well known.

The basics for a phasevocoder isn't all that complex, you do an FFT then you detect the peaks, then you move the peaks, adjust the phases and do an inverse FFT. (If you shift far you have to correct the peaks to avoid an effect that sounds like Mickey Mouse). There are a couple challenges though, one is that consonants and other complex transients get smeared, so you have to fix that with some hack. You also have the issue of tracking pitch correctly, which I believe is where Autotune cut costs by doing pitch tracking by autocorrelation more cheaply. That is a technical improvement, not a conceptual one.

May 01, 2022
On 5/1/2022 11:04 AM, Walter Bright wrote:
> On 5/1/2022 3:57 AM, Paulo Pissas wrote:
>> The reason I dropped D after over 6 years of using it exclusively, was a loss of belief in the direction, and the fact that after many years, not a lot had improved in regards to frictions for the busy programmer. It really felt like an enthusiasts' project, and not really an effort to build a widely adopted tool.
> 
> What friction was there that other languages you switched to did not have?

BTW, the entire reason for ImportC was to greatly reduce the friction of interfacing with C. It is not a feature of the D language itself.
May 01, 2022
On Sunday, 1 May 2022 at 18:09:16 UTC, Walter Bright wrote:
>
> It's gotten to the point where I can tell :-)
>
> I don't mean cranking it up to an absurd point like Cher did. I mean the subtle use of it, as it was intended.
>
> What has happened is the *style* of singing has changed to accommodate use of autotune. This becomes most apparent if you listen to a lot of singers in the 1970s vs today. Modern singers also, since they don't have to train to be on pitch, don't seem to train to develop a good tone, either. Their voices just don't have good tone compared to 70's singers.

The children now love luxury; they have bad manners, contempt for authority; they show disrespect for elders and love chatter in place of exercise. Children are now tyrants, not the servants of their households. They no longer rise when elders enter the room. They contradict their parents, chatter before company, gobble up dainties at the table, cross their legs, and tyrannize their teachers.
May 01, 2022

On Sunday, 1 May 2022 at 19:02:41 UTC, Ola Fosheim Grøstad wrote:

>

You also have the issue of tracking pitch correctly, which I believe is where Autotune cut costs by doing pitch tracking by autocorrelation more cheaply. That is a technical improvement, not a conceptual one.

There is indeed a 1999 technique by Autotune makers that did track pitch with a kind of "sliding auto-correlation" (you would slide spectrally but instead of computing a single DFT coefficient, you compte a correlation coefficient), I believe this is maybe the technique that was famously imported from seismic detection.

May 01, 2022
On 5/1/2022 6:35 AM, Guillaume Piolat wrote:
> **slices**
>     Go and Rust had it from the start, Nimrod got them etc.
>     I unfortunately lack the time to do a complete research about prior, because it seems surprising to me no other native language had them before D. I have a strong feeling that like other successful features, the experience of D was strongly influencing other designs.

D slices date back to 2001 or so. I don't know any language before that that had such a thing as part of the language. Of course people would do it in ad-hoc manners.


> In sharp contrast, there are less-impressive ideas that - like it or not - were left behind:
> - pure
> - TLS by default
> - shared
> - transitive immutability
> - insert features you hate here

I think constexpr in C++ implies pure. Rust kinda sorta has transitivity, it's inherent to its borrowing system.
May 01, 2022

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++?