November 27, 2017
On 11/27/2017 6:55 PM, John wrote:
> Should add optlink to that list, would love to see it converted to D!

So would I, but there's no chance of that (unless someone else wants to pick up that flag). Years ago, I attempted to convert it to C. It was possible, but an agonizingly slow process. The worst problem was the complete lack of a test suite for optlink, so there was no reasonable way to know if I broke it or not.

Next, Win32 is facing obsolescence. 15 years ago, it would be worth the investment. Today, not likely.
November 28, 2017
On 28/11/2017 5:03 AM, Walter Bright wrote:
> On 11/27/2017 6:55 PM, John wrote:
>> Should add optlink to that list, would love to see it converted to D!
> 
> So would I, but there's no chance of that (unless someone else wants to pick up that flag). Years ago, I attempted to convert it to C. It was possible, but an agonizingly slow process. The worst problem was the complete lack of a test suite for optlink, so there was no reasonable way to know if I broke it or not.


We have discussed this on Discord a little bit lately.
What we are hoping for is a D dmc+libc updated to use dmd-be. Potentially allowing us to use LLVM's linker but with dmc's libc as well. Giving us out of the box experience for 64bit.

It would be nice, but well, your site would need a lot of changes to go in this direction.
November 28, 2017
On Tuesday, 28 November 2017 at 04:52:52 UTC, bauss wrote:
> You're not measuring what you think for the Java program. Did you calculate the runtime and JIT initialization time and subtracted that from the actual execution time? Otherwise your benchmark isn't sufficient.

For small programs, startup time is fair to consider since the end user still has to deal with that too.

But for larger programs, I suspect it would disappear too.
November 27, 2017
On 11/27/2017 9:11 PM, rikki cattermole wrote:
> On 28/11/2017 5:03 AM, Walter Bright wrote:
>> On 11/27/2017 6:55 PM, John wrote:
>>> Should add optlink to that list, would love to see it converted to D!
>>
>> So would I, but there's no chance of that (unless someone else wants to pick up that flag). Years ago, I attempted to convert it to C. It was possible, but an agonizingly slow process. The worst problem was the complete lack of a test suite for optlink, so there was no reasonable way to know if I broke it or not.
> 
> 
> We have discussed this on Discord a little bit lately.
> What we are hoping for is a D dmc+libc updated to use dmd-be. Potentially allowing us to use LLVM's linker but with dmc's libc as well. Giving us out of the box experience for 64bit.
> 
> It would be nice, but well, your site would need a lot of changes to go in this direction.

Yes, I've thought about making dmc++ 64 bit, but there'd be a fair amount of work (mostly upgrading SNN to 64 bits.)
November 28, 2017
On Tuesday, 28 November 2017 at 06:12:19 UTC, Walter Bright wrote:
> On 11/27/2017 9:11 PM, rikki cattermole wrote:
>> On 28/11/2017 5:03 AM, Walter Bright wrote:
>>> On 11/27/2017 6:55 PM, John wrote:
>>>> Should add optlink to that list, would love to see it converted to D!
>>>
>> We have discussed this on Discord a little bit lately.
>> What we are hoping for is a D dmc+libc updated to use dmd-be. Potentially allowing us to use LLVM's linker but with dmc's libc as well. Giving us out of the box experience for 64bit.
>> 
>> It would be nice, but well, your site would need a lot of changes to go in this direction.
>
> Yes, I've thought about making dmc++ 64 bit, but there'd be a fair amount of work (mostly upgrading SNN to 64 bits.)

We could also convert that libc to D ;)
Seriously betterC mode would make that way easier and more fun, is it on GitHub?

Actually Herb Sutter shared once that Microsoft used C++ (as in templates C++) to reimplement a significant chunk of its libc with great success. Less code, less ifdef hell and macro abuse I think were presented as advantages.



November 28, 2017
On Monday, 27 November 2017 at 17:35:53 UTC, Ola Fosheim Grostad wrote:
> C++ is very much batteries not included... Which is good for low level programming.

In that case, why is libstdc++ 12MB, while libphobos2 is half the size, at 5.5MB?
November 28, 2017
On Tuesday, 28 November 2017 at 05:11:25 UTC, rikki cattermole wrote:
> On 28/11/2017 5:03 AM, Walter Bright wrote:
>> On 11/27/2017 6:55 PM, John wrote:
>>> Should add optlink to that list, would love to see it converted to D!
>> 
>> So would I, but there's no chance of that (unless someone else wants to pick up that flag). Years ago, I attempted to convert it to C. It was possible, but an agonizingly slow process. The worst problem was the complete lack of a test suite for optlink, so there was no reasonable way to know if I broke it or not.
>
>
> We have discussed this on Discord a little bit lately.
> What we are hoping for is a D dmc+libc updated to use dmd-be. Potentially allowing us to use LLVM's linker but with dmc's libc as well. Giving us out of the box experience for 64bit.
>
> It would be nice, but well, your site would need a lot of changes to go in this direction.

That would be great! So much easier to get nontechnical users (biologists) to an easy out of the box experience that can scale to their needs.
November 28, 2017
On Tuesday, 28 November 2017 at 06:24:38 UTC, Dmitry Olshansky wrote:
> On Tuesday, 28 November 2017 at 06:12:19 UTC, Walter Bright wrote:
>> On 11/27/2017 9:11 PM, rikki cattermole wrote:
>>> On 28/11/2017 5:03 AM, Walter Bright wrote:
>>>> On 11/27/2017 6:55 PM, John wrote:
>>>>> Should add optlink to that list, would love to see it converted to D!
>>>>
>>> We have discussed this on Discord a little bit lately.
>>> What we are hoping for is a D dmc+libc updated to use dmd-be. Potentially allowing us to use LLVM's linker but with dmc's libc as well. Giving us out of the box experience for 64bit.
>>> 
>>> It would be nice, but well, your site would need a lot of changes to go in this direction.
>>
>> Yes, I've thought about making dmc++ 64 bit, but there'd be a fair amount of work (mostly upgrading SNN to 64 bits.)
>
> We could also convert that libc to D ;)
> Seriously betterC mode would make that way easier and more fun, is it on GitHub?
>
> Actually Herb Sutter shared once that Microsoft used C++ (as in templates C++) to reimplement a significant chunk of its libc with great success. Less code, less ifdef hell and macro abuse I think were presented as advantages.

Yes, the new MSVCRT.dll, is implemented in C++.

https://blogs.msdn.microsoft.com/vcblog/2014/06/10/the-great-c-runtime-crt-refactoring/

After Midori and Longhorn's failure, there has been a migration effort to slowly get rid of C and focus on C++ for lower level stuff and .NET Native for everything else, at least on what concerns kernel, desktop and UWP.


November 28, 2017
On Tuesday, 28 November 2017 at 02:26:34 UTC, Neia Neutuladh wrote:
> On Monday, 27 November 2017 at 17:35:53 UTC, Ola Fosheim Grostad wrote:
>> On Monday, 27 November 2017 at 16:44:41 UTC, Neia Neutuladh wrote:
>>> I last used C++ professionally in 2015, and we were still rolling out C++11. std::string_view is part of C++17. You're calling me stupid for not having already known about it. (Yes, yes, you were sufficiently indirect to have a fig leaf of deniability.)
>>
>> I'n not talking about you obviously. I am talking about using languages stupidly...

You wrote "std::string does the same thing. So if I reimplemented subtex naively in C++, its performance would be closer to the C# version than to the D version."

"Naively" would mean that you didnt know better or that an alternative would be complex, but later on you acknowledged that doing it with slices would be better, but that you could not be bothered.  So you know better, but would rather choose to do it stupedly...

I have never said that you are stupid, what I said was the equivalent of  "std::string does the same thing. So if I reimplemented subtex stupidly in C++, its performance would be closer to the C# version than to the D version."

That line of reasoning is silly. I know that you know better, because you clearly stated so in the post I responded to.


> allocating memory isn't slow simply because it requires executing a large number of instructions.

Thats debatable...




November 28, 2017
On Tuesday, 28 November 2017 at 04:35:04 UTC, IM wrote:
> On Monday, 27 November 2017 at 08:33:42 UTC, IM wrote:
>> - More exposure. I sometimes feel like there isn't enough D material to consume on a regular basis (and I and certainly many others are eager to learn more and more about the language). i.e. one blog post (weekly?), and a single DConf annually is not enough. In the C++ world, there's always something to read (various blog posts) or something to watch (CppCon, C++Now, Meeting C++, code::dive, Pacific++, ...etc.)
>>
>
> What are the plans to increase exposure?

This is something that has gone in fits and starts over the years because of a lack of dedicated manpower, but the pace has been gradually to picking up. As of recently, I'm working on several tasks in this direction, big and small, with the support of the D Foundation. For example, we now have a D Language Foundation channel on youtube [1] where I'm currently in the process of collecting DConf videos that are scattered around different sites and accounts (working on 2014 first, since several of the video links on that edition of dconf.org were broken). It's not ready for announcement yet, but I hope to be there by the end of the year. There are a number of other things I'm looking at that have tended to slip through the cracks because they've been overlooked or no one has stepped in to do them.

On the blog, I would love it if I could keep up a steady pace of once a week (I optimistically suggested twice-weekly postings when I first pitched it!), but I have neither the time nor the depth, for the sort of content we need, to maintain that pace myself. I'm always open to proposals for new material -- guest post ideas, project highlight suggestions, anything I can evaluate for suitability.

That's only a part of the story though. There are D blogs out there other than the official one, but they're quiet for long periods of time. I want to see people writing about their projects, posting daily/weekly/monthly progress reports, live-streaming code sessions, writing articles for other web sites (like gamedev.net), initiating conversations on reddit (particularly on /r/d_language [2], the recent updating of which was another of the little tasks that needed doing), sharing D examples in other programming forums, filling in the holes in our Wiki and Wikipedia... the same stuff C++ users do at scale.

[1] https://www.youtube.com/channel/UC5DNdmeE-_lS6VhCVydkVvQ
[2] https://www.reddit.com/r/d_language/