January 08
On Monday, 8 January 2024 at 15:30:19 UTC, Max Samukha wrote:
> On Monday, 8 January 2024 at 14:58:13 UTC, Richard (Rikki) Andrew Cattermole wrote:
>
>>
>> It was voted on as the common denominator that everyone could agree upon who voted.
>
> If optional () for single-token template argument lists had been put to a vote, the majority would have voted against it. I doubt anybody would want to remove it today.

+1

/P
January 08
On Monday, 8 January 2024 at 15:30:19 UTC, Max Samukha wrote:

> If optional () for single-token template argument lists had been put to a vote, the majority would have voted against it. I doubt anybody would want to remove it today.

(The majority included me, btw.)
January 09
On 09/01/2024 4:30 AM, Max Samukha wrote:
> On Monday, 8 January 2024 at 14:58:13 UTC, Richard (Rikki) Andrew Cattermole wrote:
> 
>>
>> It was voted on as the common denominator that everyone could agree upon who voted.
> 
> If optional () for single-token template argument lists had been put to a vote, the majority would have voted against it. I doubt anybody would want to remove it today.

I want full blown f-strings.

I have a formatter all written for it and date/time updated too. Its pretty nice.

But alas, Adam, didn't.

Best I could do was argue against locking us in to a different feature set and keeping it consistent with double quoted strings (``\$`` instead of ``$$`` escape).
January 08
On Monday, 8 January 2024 at 02:10:03 UTC, Walter Bright wrote:
> Amusingly, istrings can be used to create non-trivial expression tuples with this:
>
> ```
> int i = 4;
> auto tup2 = i"$i $(3 + i)"[1..3];
> writeln("a tuple: ", tup2);
> ```
>
> which prints:
>
> a tuple: 47

Wouldn't you just use `std.typecons.Tuple`?

```d
import std;

void main()
{
    int i = 4;
    auto tup2 = tuple(i, 3 + i);
    writeln("a tuple: ", tup2[]);
}
```
January 08
On Monday, 8 January 2024 at 15:34:21 UTC, Richard (Rikki) Andrew Cattermole wrote:

>
> I want full blown f-strings.
>
> I have a formatter all written for it and date/time updated too. Its pretty nice.
>
> But alas, Adam, didn't.
>
> Best I could do was argue against locking us in to a different feature set and keeping it consistent with double quoted strings (``\$`` instead of ``$$`` escape).

I don't know why they opted for $$. \ is used for any other escape sequence in D.
January 09
On 09/01/2024 5:18 AM, Max Samukha wrote:
> On Monday, 8 January 2024 at 15:34:21 UTC, Richard (Rikki) Andrew Cattermole wrote:
> 
>>
>> I want full blown f-strings.
>>
>> I have a formatter all written for it and date/time updated too. Its pretty nice.
>>
>> But alas, Adam, didn't.
>>
>> Best I could do was argue against locking us in to a different feature set and keeping it consistent with double quoted strings (``\$`` instead of ``$$`` escape).
> 
> I don't know why they opted for $$. \ is used for any other escape sequence in D.

I don't either. I'm glad that I managed to argue to make it based upon double quoted strings.

Keeping things consistent is important when a decision doesn't matter too much otherwise!
January 08

On Monday, 8 January 2024 at 00:37:52 UTC, Walter Bright wrote:

>

On 1/7/2024 3:27 PM, bomat wrote:

>

I will continue with my D/vibe.d project because it is just a fun experiment that I do in my free time. If I get stuck at some point, fine, it still will have been a great learning experience.
But would I stick with D if my business depended on it? Hell no. I'd probably use Go or maybe even C++ with wt or something like that. Something that I can be reasonably sure will still be maintained in 5 years from now.

D has been continuously improved and supported for over 20 years now.

Yes. And now it's running out of steam.

At least That's what I'm afraid of, considering the loss of important infrastructure and library maintainers I mentioned.

I hope I'm wrong, of course.

January 08

On Sunday, 7 January 2024 at 21:16:46 UTC, H. S. Teoh wrote:

>

As somebody has said, it depends on your definition of "success". If your definition of success is popularity, then sure, you need a big community, lots of existing code, hype, etc.. By that measure C++ is more successful than D and I should be using C++ instead. But I came to D not because of popularity, but because of technical merit. I would rather stay with a small, relatively unknown community where technical excellence plays a deciding role, than in a large community of mediocrity where popularity is the deciding factor. So my definition of success is rather different from what some have been using when bemoaning the current state of D.

I think a good definition of success is popularity * (yourLanguage.technicalMerit - replacedLanguage.technicalMerit). No matter how popular a language is, if it isn't better than what it replaces it can't be considered a success. If it is outright worse than the old ones, it's actually a bad thing for it to gain popularity.

Of course, there are many definitions for techical merit. Maybe your language serves it's task in itself only as well as that it replaces, but if it is better in teaching good mental skills than it's replacement it still can be considered a success in another sense.

Also, great technical merit is always positive as long as you have at least some users but the success tends tends to be minimal compared to a langauge which is only slightly better than older ones but massively more popular.

Another caveat - popularity also has many forms. Even if you have little or no direct users, if your work serves to improve other languages that take their ideas from you IMO you have part of the credit if those languages become popular.

January 08

On Monday, 8 January 2024 at 07:55:55 UTC, Siarhei Siamashka wrote:

>

On Monday, 8 January 2024 at 04:00:52 UTC, H. S. Teoh wrote:

>

[...]

[...]

>

[...]

Now how do you interpret the following Don Allen's sentence: "If your application is cpu-limited but spends most of its time in some library, e.g.,sqlite, or in system-calls, re-writing it in C++ will only help in proportion to the time spent in your own code, which is small by assumption." ?

The information about the time spent in sqlite or in system-calls is trivially obtainable via running a profiler and pretty much everyone knows this. What kind of alternative method of obtaining this information do you imagine Don Allen might have used? There's no need to write angry walls of text about the most elementary things.

I think you've misunderstood. H.S Teoh was agreeing with Don Allen. And in the part you quoted, he was not meaning Don specifically, but a general "you".

January 08
On Mon, Jan 08, 2024 at 05:27:09PM +0000, Dukc via Digitalmars-d wrote:
> On Sunday, 7 January 2024 at 21:16:46 UTC, H. S. Teoh wrote:
> > As somebody has said, it depends on your definition of "success".
[...]
> I think a good definition of success is `popularity * (yourLanguage.technicalMerit - replacedLanguage.technicalMerit)`. No matter how popular a language is, if it isn't better than what it replaces it can't be considered a success. If it is outright worse than the old ones, it's actually a bad thing for it to gain popularity.
[...]

The thing is, arbitrary definitions like this miss the point that success in its literal sense means you achieved the goal(s) you set out to accomplish. As such, what constitutes success depends on what your goals are in the first place. If the goals are unclear or unknown, then success is strictly speaking undefined.  And since the definition of success depends on its goals, if two languages have two different goals then you can't really compare their respective "successes", because that's just comparing apples and oranges.

Furthermore, what the *user* considers as success may not be the same as what the author considers as success -- because their respective goals differ. If the language author's goal is a language that can express the kind of complex tasks he wishes to program, then he might consider it a success once the language has reached that level of expressivity. But if a user's goal is to use a popular language, then he may not agree on this "success".

tl;dr: "success" is often a squirrely word, used more for self-praise or criticism rather than an objective measure of a language.


T

-- 
You are only young once, but you can stay immature indefinitely. -- azephrahel
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19