View mode: basic / threaded / horizontal-split · Log in · Help
January 08, 2012
Re: DMD - Windows
Am 08.01.2012, 22:14 Uhr, schrieb q66 <quaker66@gmail.com>:

> On Sunday, 8 January 2012 at 21:10:21 UTC, Martin Nowak wrote:
>> Am 08.01.2012, 21:04 Uhr, schrieb q66 <quaker66@gmail.com>:
>>
>>> By the way, Walter, I'm fixing druntime and Phobos makefiles after the  
>>> Shared ELF merge so they can be built as shared libs (I have them  
>>> working both now, on my FreeBSD box). I just wanna ask you, I think it  
>>> would be a good idea to remove default phobos2 linkage from dmd and  
>>> move that to dmd.conf instead, as the phobos2 linkage comes after  
>>> dmd.conf linkages and druntime has to be linked after phobos (I'd like  
>>> them as separate libs). Do you think I can do that, or any other idea?
>>
>> I hope you know that shared libraries still don't work.
>> It needs runtime which is currently being merged.
>>
>> There are ShareRuntime branches for dmd/druntime/phobos
>> https://github.com/dawgfoto
>> and I'd be glad have a cleaner Makefile solution than mine.
>
> don't work? I use git and they're working perfectly fine for me :)
>
>

No EH, no static/TLS GC roots from shared libraries.
January 08, 2012
Re: DMD - Windows
On 1/8/2012 12:35 PM, Trass3r wrote:
>> Clang is a lot slower at compiling than dmc.
>
> With or without optimizations?

http://biolpc22.york.ac.uk/wx/wxhatch/wxMSW_Compiler_choice.html


> Would be interesting to see detailed comparisons lexing/parsing/... like
> http://clang.llvm.org/performance.html

Being faster than gcc isn't a great trick.
January 08, 2012
Re: DMD - Windows
On 1/8/2012 12:04 PM, q66 wrote:
> By the way, Walter, I'm fixing druntime and Phobos makefiles after the Shared
> ELF merge so they can be built as shared libs (I have them working both now, on
> my FreeBSD box). I just wanna ask you, I think it would be a good idea to remove
> default phobos2 linkage from dmd and move that to dmd.conf instead, as the
> phobos2 linkage comes after dmd.conf linkages and druntime has to be linked
> after phobos (I'd like them as separate libs). Do you think I can do that, or
> any other idea?

Once Phobos works as a shared lib, I think we should switch to that as the default.
January 08, 2012
Re: DMD - Windows
On 1/8/2012 1:51 PM, Martin Nowak wrote:
> No EH, no static/TLS GC roots from shared libraries.

Also, calling the runtime helper functions, like ulong division, is broken for 
shared because it doesn't set EBX. (Or maybe that doesn't matter since those 
functions don't access static data? Not sure.)
January 08, 2012
Re: DMD - Windows
On 1/8/2012 12:31 PM, Trass3r wrote:
> I thought even dmc supports a few features.
> Which one doesn't implement C++11 at all?

Each compiler does a different set of C++11 features, and it changes regularly.

It's just not a good idea now. The agony of #ifdef'ing around compiler problems 
is not going to make the code cleaner.
January 08, 2012
Re: DMD - Windows
On Sunday, 8 January 2012 at 22:50:07 UTC, Walter Bright wrote:
>> Would be interesting to see detailed comparisons 
>> lexing/parsing/... like
>> http://clang.llvm.org/performance.html
>
> Being faster than gcc isn't a great trick.

I didn't claim the opposite.
I was curious why dmc is faster.
January 08, 2012
Re: DMD - Windows
On Sunday, 8 January 2012 at 22:52:17 UTC, Walter Bright wrote:
> Once Phobos works as a shared lib, I think we should switch to 
> that as the default.

Please, no. That would mean standalone executables won't work
by default.
January 09, 2012
Re: DMD - Windows
>
> Not to get too far off topic, I'm the only one where I work who will use
> C#. I think some people simply hate Microsoft the company so much that they
> would not even fire up C# and try it once. They won't be caught liking it.
> And that's seems to be the case where I work as far as I can tell. Maybe D
> would be more well received than C# by such people if it integrated better
> with VS, I don't know. But there is always the issue with less widely used
> languages: if I write our company's main product in D, and if we then need
> to hire more people, I need to tell my boss we need to hire people that
> know D (or are at least willing and able pick it up) which are not as
> common. If anything at all goes wrong with D that wouldn't have gone wrong
> had we used C++, it's on me. No one ever got fired for buying IBM, lol.
> Sorry, I know we need to battle past that but I can't help mentioning it.
>

Not so much hate Microsoft as cautious of using platforms that contain a
lot of Microsoft IP. The thing about Microsoft is that it isn't really one
monolithic company and while the divisions of the company that do C# and
.net are probably totally cool there are other parts of of the company who
wouldn't hesitate to leverage that IP against anything they perceive to be
a competitive threat. Even if they don't C# being a VM based language there
is a lot of Oracle IP to deal with (Microsoft currently pay Oracle a metric
f*cktonne of money per year to use that IP and I am not sure where
alternate .Net implementations stand in this regards). See Microsoft v
Google and Oracle v Google. This probably won't be an issue if you are
heavily microsoft centric in what you are doing anyways just not sure how
much I trust it as a cross platform solution in the long term.

Ideally D would allow you to write code that is in the same ballpark
performance wise as C/C++ but with much greater programmer productivity. I
don't think it's quite there yet. I think that IDE intergration including V
S is part of that, in fact I think it is something of a low hanging fruit.
January 09, 2012
Re: DMD - Windows
On 1/8/2012 2:58 PM, Trass3r wrote:
> I was curious why dmc is faster.

Many hours with the profiler!
January 09, 2012
Re: DMD - Windows
On 1/8/2012 3:12 PM, Adam D. Ruppe wrote:
> On Sunday, 8 January 2012 at 22:52:17 UTC, Walter Bright wrote:
>> Once Phobos works as a shared lib, I think we should switch to that as the
>> default.
>
> Please, no. That would mean standalone executables won't work
> by default.

People who distribute apps will be more sophisticated users, and will be able to 
set a flag to static link.

I guarantee you that shared should be the default, as otherwise newbies will 
compile with D and:

   "Zo-mah-gawd, look at the size of those D executables! D sux!"

Which happens now. Note that the default with gcc is to link with the shared C 
runtime, and it will be expected for dmd.
3 4 5 6 7 8
Top | Discussion index | About this forum | D home