Jump to page: 1 2 3
Thread overview
Are these bencmarks recent and real?
Aug 30, 2021
rempas
Aug 30, 2021
jfondren
Aug 30, 2021
rikki cattermole
Aug 30, 2021
Ali Çehreli
Aug 30, 2021
rempas
Aug 31, 2021
Ali Çehreli
Sep 02, 2021
Imperatorn
Sep 02, 2021
H. S. Teoh
Aug 30, 2021
rempas
Aug 31, 2021
Chris Katko
Aug 31, 2021
Mike Parker
Aug 31, 2021
drug
Aug 31, 2021
bauss
Sep 01, 2021
russhy
Sep 01, 2021
russhy
Sep 01, 2021
user1234
Sep 01, 2021
russhy
Sep 01, 2021
russhy
Sep 02, 2021
evilrat
Sep 02, 2021
Patrick Schluter
Sep 02, 2021
jfondren
Sep 02, 2021
deadalnix
August 30, 2021

Just trying to compile a sample basic gtk-d project (including the libraries themselves) using ldc2 and optimization "-Os" and seeing how much time this takes, I want to ask if the benchmarks found here about ldc2 are real. Again seeing the gtk-d project taking so much time, It's hard to believe that ldc2 compiles faster that tcc and go. However, this test probably doesn't use optimizations but still.... Ayn thoughts?

August 30, 2021

On Monday, 30 August 2021 at 13:12:09 UTC, rempas wrote:

>

Just trying to compile a sample basic gtk-d project (including the libraries themselves) using ldc2 and optimization "-Os" and seeing how much time this takes, I want to ask if the benchmarks found here about ldc2 are real. Again seeing the gtk-d project taking so much time, It's hard to believe that ldc2 compiles faster that tcc and go. However, this test probably doesn't use optimizations but still.... Ayn thoughts?

You can see how recent they are, and yeah they're real, but it's a very specific artificial benchmark and there's a lot more to say about compilation speeds about the various languages. That D can compile amazingly fast can be shown just by building dmd itself. But unlike go, D also gives you a bunch of tools that you can use to make compile times take a lot longer. Likewise you could say that D can make just as careful use of memory as a C program, but that D unlike C also gives you a bunch of tools that you can put towards much less careful use of memory.

August 31, 2021
On 31/08/2021 3:34 AM, jfondren wrote:
> That D can compile amazingly fast can be shown just by building dmd itself.

"Oh let me recompile dmd" - Stefan

A little gag from this BeerConf and yeah, it builds fast.
August 30, 2021
On 8/30/21 8:46 AM, rikki cattermole wrote:
> 
> On 31/08/2021 3:34 AM, jfondren wrote:
>> That D can compile amazingly fast can be shown just by building dmd itself.
> 
> "Oh let me recompile dmd" - Stefan
> 
> A little gag from this BeerConf and yeah, it builds fast.

The following program takes 10 seconds on my computer. How is that fast? :p

import std.range;
import std.algorithm;

int main() {
  enum ret = 4_000_000.iota.sum;
  // pragma(msg, ret);
  return ret ^ ret;
}

(Of course I am joking: Replacing 'enum' with e.g. 'const' makes it fast.)

However, TIL: pragma(msg) works with 'const' variables! (At least with that one.) Replace 'enum' with 'const' and pragma(msg) computes it at compile time. But... but... 'const' doesn't really mean compile-time... Is that intended? There is some semantic confusion there. :/

Ali
August 30, 2021

On Monday, 30 August 2021 at 15:34:13 UTC, jfondren wrote:

>

On Monday, 30 August 2021 at 13:12:09 UTC, rempas wrote:

>

Just trying to compile a sample basic gtk-d project (including the libraries themselves) using ldc2 and optimization "-Os" and seeing how much time this takes, I want to ask if the benchmarks found here about ldc2 are real. Again seeing the gtk-d project taking so much time, It's hard to believe that ldc2 compiles faster that tcc and go. However, this test probably doesn't use optimizations but still.... Ayn thoughts?

You can see how recent they are, and yeah they're real, but it's a very specific artificial benchmark and there's a lot more to say about compilation speeds about the various languages. That D can compile amazingly fast can be shown just by building dmd itself. But unlike go, D also gives you a bunch of tools that you can use to make compile times take a lot longer. Likewise you could say that D can make just as careful use of memory as a C program, but that D unlike C also gives you a bunch of tools that you can put towards much less careful use of memory.

Yeah I checked the last commit which was 11 July so yeah they are very resent. My only complain about D's memory management is that the Garbage collector is used in the Phobos so I cannot mark my whole project with @nogc. I think the library is a specific thing and probably we could get away doing manual memory management and also being bug-free but I don't take it on me. I may be wrong

August 30, 2021
On Monday, 30 August 2021 at 17:15:00 UTC, Ali Çehreli wrote:
> On 8/30/21 8:46 AM, rikki cattermole wrote:
>
> The following program takes 10 seconds on my computer. How is that fast? :p
>
> import std.range;
> import std.algorithm;
>
> int main() {
>   enum ret = 4_000_000.iota.sum;
>   // pragma(msg, ret);
>   return ret ^ ret;
> }
>
> (Of course I am joking: Replacing 'enum' with e.g. 'const' makes it fast.)
>
> However, TIL: pragma(msg) works with 'const' variables! (At least with that one.) Replace 'enum' with 'const' and pragma(msg) computes it at compile time. But... but... 'const' doesn't really mean compile-time... Is that intended? There is some semantic confusion there. :/
>
> Ali

Yep! There is and I hope things would be more clear. Your book helps tho ;)
August 31, 2021

On Monday, 30 August 2021 at 15:34:13 UTC, jfondren wrote:

>

On Monday, 30 August 2021 at 13:12:09 UTC, rempas wrote:

>

Just trying to compile a sample basic gtk-d project (including the libraries themselves) using ldc2 and optimization "-Os" and seeing how much time this takes, I want to ask if the benchmarks found here about ldc2 are real. Again seeing the gtk-d project taking so much time, It's hard to believe that ldc2 compiles faster that tcc and go. However, this test probably doesn't use optimizations but still.... Ayn thoughts?

You can see how recent they are, and yeah they're real, but it's a very specific artificial benchmark and there's a lot more to say about compilation speeds about the various languages. That D can compile amazingly fast can be shown just by building dmd itself. But unlike go, D also gives you a bunch of tools that you can use to make compile times take a lot longer. Likewise you could say that D can make just as careful use of memory as a C program, but that D unlike C also gives you a bunch of tools that you can put towards much less careful use of memory.

One definite flaw I've had with D's ecosystem, is these issues aren't made CLEAR. Like if you dare import regex and use a single regex match, your compile time explodes by 10-15 seconds on my i3 chromebook (from ~3 seconds to over 15!).

There are a lot of gotchas in D. Anything that "can" explode your program in terms of memory leaks, or run / compile-time performance should be clearly documented.

And the barrier-to-entry is annoying even to fix documentation. I went to a D page, clicked "improve this page" and I have to... fork the repo, and then submit a pull request. Even if if's just to correct a typo. Is that kind of lock-and-key audited security over edits to documentation... really necessary? If it takes more than 10 seconds, most people aren't even going to bother.

August 31, 2021

On Tuesday, 31 August 2021 at 08:27:30 UTC, Chris Katko wrote:

>

And the barrier-to-entry is annoying even to fix documentation. I went to a D page, clicked "improve this page" and I have to... fork the repo, and then submit a pull request. Even if if's just to correct a typo. Is that kind of lock-and-key audited security over edits to documentation... really necessary? If it takes more than 10 seconds, most people aren't even going to bother.

That all happens on github. Even the editing. You never have to leave the browser. The whole point of that is that you don't have to fork manually from the command line. I'm not sure how it could be easier. Care to elaborate?

Anyway, if that's too much, then you can always submit an issue on Bugzilla.

August 31, 2021
31.08.2021 11:27, Chris Katko пишет:
[snip]
> 
> And the barrier-to-entry is annoying even to fix documentation. I went to a D page, clicked "improve this page" and I have to... fork the repo, and then submit a pull request. Even if if's just to correct a typo. Is that kind of lock-and-key audited security over edits to documentation... really necessary? If it takes more than 10 seconds, most people aren't even going to bother.
> 

What's wrong with? Just now I submit a couple of PRs to fix typo in documentation. It's really trivial thing to do, especially if you contribute to open source projects. In fact it is a standard how to work.

August 31, 2021

On Tuesday, 31 August 2021 at 08:27:30 UTC, Chris Katko wrote:

>

And the barrier-to-entry is annoying even to fix documentation. I went to a D page, clicked "improve this page" and I have to... fork the repo, and then submit a pull request. Even if if's just to correct a typo. Is that kind of lock-and-key audited security over edits to documentation... really necessary? If it takes more than 10 seconds, most people aren't even going to bother.

That's standard for pretty much all open-source documentations.

See examples below:

MDN Uses Github for their documentation: https://github.com/mdn/content/blob/main/files/en-us/web/html/element/input/index.html

Rust: https://prev.rust-lang.org/en-US/contribute-docs.html

Visual C++: https://github.com/MicrosoftDocs/cpp-docs/blob/master/CONTRIBUTING.md

And the list goes on.

It's the most liable method of having documentation that can be contributed to by others.

What would your alternative be? There HAS to be someway of audited security, otherwise people WILL insert whatever into the documentation such as malicious content and the malicious content may not even be discoverable because it could be hidden to a page's user.

« First   ‹ Prev
1 2 3