Re: LDC 0.12.0 has been released

2013-10-25 Thread John Joyus

On 10/25/2013 03:50 AM, ilya-stromberg wrote:


It depends.
Two benchmarks of different languages and compilers:
http://togototo.wordpress.com/2013/07/23/benchmarking-level-generation-go-rust-haskell-and-d/

http://togototo.wordpress.com/2013/08/23/benchmarks-round-two-parallel-go-rust-d-scala-and-nimrod/


I think it's answer for your question. For example, Clang (LLVM C) is
fastest, LDC (LLVM D) has 2-nd place, but LLVM-GHC (LLVM Haskell) ~ 2
times slower.


Yes, that answers my question. Thanks for those great links!
It's impressive the LDC is as fast as Clang!!



Re: LDC 0.12.0 has been released

2013-10-25 Thread deadalnix

On Friday, 25 October 2013 at 07:50:36 UTC, ilya-stromberg wrote:
I think it's answer for your question. For example, Clang (LLVM 
C) is fastest, LDC (LLVM D) has 2-nd place, but LLVM-GHC (LLVM 
Haskell) ~ 2 times slower.


The explanation is quite simple. LLVM understand C and C++ 
runtime. It doesn't understand D runtime (LDC is doing some work 
in that regard, but it is still limited). So you see a difference 
between C and C++ as some optimization will be done in C/C++ (for 
instance heap to stack promotion) when it won't be done in D.


Haskell has really different semantic than C and C++, and quite 
far away from the hardware, so you have to expect a performance 
drop. The comparison of either C or C++ with haskell is not 
really meaningful as it is really comparing apple and bananas.


Re: Start of dmd 2.064 beta program

2013-10-25 Thread Walter Bright

On 10/25/2013 6:15 AM, eles wrote:

It is a specific reason why this is kept?:

http://forum.dlang.org/thread/ohduisigpwdiqhpde...@forum.dlang.org#post-btwbpwgluzyxmhphwebp:40forum.dlang.org



Breaking peoples' build scripts and makefiles is not nice :-)


Re: Start of dmd 2.064 beta program

2013-10-25 Thread Namespace

On Friday, 25 October 2013 at 13:24:12 UTC, eles wrote:
On Saturday, 12 October 2013 at 22:16:13 UTC, Walter Bright 
wrote:

http://ftp.digitalmars.com/dmd2beta.zip

Current list of regressions:

http://d.puremagic.com/issues/buglist.cgi?query_format=advanced&bug_severity=regression&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED



And the famous

int[$] x = [1,2,3];

to declare static arrays and force the compiler to compute the 
length?


When was decided to add this? I would love it, but I cannot 
remember that this was decided.


Re: Start of dmd 2.064 beta program

2013-10-25 Thread eles

On Saturday, 12 October 2013 at 22:16:13 UTC, Walter Bright wrote:

http://ftp.digitalmars.com/dmd2beta.zip

Current list of regressions:

http://d.puremagic.com/issues/buglist.cgi?query_format=advanced&bug_severity=regression&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED



And the famous

int[$] x = [1,2,3];

to declare static arrays and force the compiler to compute the 
length?




Re: Start of dmd 2.064 beta program

2013-10-25 Thread eles

On Saturday, 12 October 2013 at 22:16:13 UTC, Walter Bright wrote:

http://ftp.digitalmars.com/dmd2beta.zip

Current list of regressions:



It is a specific reason why this is kept?:

http://forum.dlang.org/thread/ohduisigpwdiqhpde...@forum.dlang.org#post-btwbpwgluzyxmhphwebp:40forum.dlang.org



Re: LDC 0.12.0 has been released

2013-10-25 Thread Jacob Carlborg

On 2013-10-23 00:42, David Nadlinger wrote:

LDC 0.12.0, the LLVM-based D compiler, is available for download! It is
built on the 2.063.2 frontend and standard library and supports LLVM
3.1-3.3 (OS X: 3.2 only).


I noticed that Apple's releases of Clang is still at 3.2.

--
/Jacob Carlborg


Re: LDC 0.12.0 has been released

2013-10-25 Thread ilya-stromberg

On Wednesday, 23 October 2013 at 17:45:50 UTC, John Joyus wrote:

On 10/22/2013 06:42 PM, David Nadlinger wrote:
LDC 0.12.0, the LLVM-based D compiler, is available for 
download!


Congratulations!

I am a D enthusiast who reads more *about* D than actually 
learning the language! ;)


I have a question about LLVM.
When it comes to performance, do all LLVM-based languages 
eventually match each other in speed for any given task, no 
matter it is Clang or D?


I guess having or not having a GC (or different implementations 
of it in different languages) will make a difference, but if we 
exclude GC, will they be generating the same exact code for any 
given operation?


In other words, though two different languages are based on 
LLVM, can one of its binary exceed the other in speed?


Thanks.


It depends.
Two benchmarks of different languages and compilers:
http://togototo.wordpress.com/2013/07/23/benchmarking-level-generation-go-rust-haskell-and-d/
http://togototo.wordpress.com/2013/08/23/benchmarks-round-two-parallel-go-rust-d-scala-and-nimrod/

I think it's answer for your question. For example, Clang (LLVM 
C) is fastest, LDC (LLVM D) has 2-nd place, but LLVM-GHC (LLVM 
Haskell) ~ 2 times slower.