www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - D-Day for DMD is today!

reply Walter Bright <newshound2 digitalmars.com> writes:
https://github.com/D-Programming-Language/dmd/pull/4923

We have made the switch from C++ DMD to D DMD!

Many, many thanks to Daniel Murphy for slaving away for 2.5 years to make this 
happen. More thanks to Martin Nowak for helping shepherd it through the final 
stages, and to several others who have pitched in on this.

This is a HUGE milestone for us.

Much work remains to be done, such as rebasing existing dmd pull requests. 
Thanks in advance for the submitters who'll be doing that. I hope you aren't
too 
unhappy about the extra work - it's in a good cause!
Aug 22 2015
next sibling parent reply Rikki Cattermole <alphaglosined gmail.com> writes:
On 8/23/2015 5:17 PM, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to
 make this happen. More thanks to Martin Nowak for helping shepherd it
 through the final stages, and to several others who have pitched in on
 this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I
 hope you aren't too unhappy about the extra work - it's in a good cause!
Awesome! Congrats to everybody involved. Now lets hope the next stage is smooth in the transition.
Aug 22 2015
parent reply Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 08/23/2015 07:22 AM, Rikki Cattermole wrote:
 Now lets hope the next stage is smooth in the transition.
Here is a small guide on how to update a PR. https://github.com/D-Programming-Language/dmd/pull/4922#issuecomment-133776696
Aug 22 2015
parent reply Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 08/23/2015 01:37 AM, Martin Nowak wrote:
 On 08/23/2015 07:22 AM, Rikki Cattermole wrote:
 Now lets hope the next stage is smooth in the transition.
Here is a small guide on how to update a PR. https://github.com/D-Programming-Language/dmd/pull/4922#issuecomment-133776696
I haven't worked with the conversion tool before. How is this part done?
Aug 23 2015
parent reply Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 08/23/2015 06:35 PM, Nick Sabalausky wrote:
 
 I haven't worked with the conversion tool before. How is this part done?
It's the exact command below that line, we've incorporated that into the makefile.
Aug 23 2015
next sibling parent Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 08/23/2015 07:08 PM, Martin Nowak wrote:
 On 08/23/2015 06:35 PM, Nick Sabalausky wrote:
 I haven't worked with the conversion tool before. How is this part done?
It's the exact command below that line, we've incorporated that into the makefile.
In case it doesn't work b/c you added a new symbol, you need to updated magicport.json during the rebase. https://github.com/MartinNowak/dmd/blob/9907cf65091f1c378c4955b7b5ee8287c17ae879/src/magicport.json
Aug 23 2015
prev sibling parent Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 08/23/2015 01:08 PM, Martin Nowak wrote:
 On 08/23/2015 06:35 PM, Nick Sabalausky wrote:
 I haven't worked with the conversion tool before. How is this part done?
It's the exact command below that line, we've incorporated that into the makefile.
Ah, ok, I misunderstood that part.
Aug 23 2015
prev sibling next sibling parent reply "BBasile" <bb.temp gmx.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!
 [...]
Excellent. I guess it's also time to clean the wiki page that explained how to build under win32 with DMC. It's obsolete now.
Aug 22 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"BBasile"  wrote in message news:rljvemqjfvnnqqnnclxz forum.dlang.org...

 Excellent. I guess it's also time to clean the wiki page that explained 
 how to build under win32 with DMC. It's obsolete now.
Nope! The glue layer and backend are still in C++, and still need to be built with DMC.
Aug 22 2015
parent reply "BBasile" <bb.temp gmx.com> writes:
On Sunday, 23 August 2015 at 06:08:54 UTC, Daniel Murphy wrote:
 "BBasile"  wrote in message 
 news:rljvemqjfvnnqqnnclxz forum.dlang.org...

 Excellent. I guess it's also time to clean the wiki page that 
 explained how to build under win32 with DMC. It's obsolete now.
Nope! The glue layer and backend are still in C++, and still need to be built with DMC.
Of course. I Haven't tried to build it when i've written this observation. By the way, currently under win32 it's not possible to build DDMD unless the line --- #HOST_DC=dmd --- is uncommented. Because there is a bunch of commands using dmd compile and run (-run) in win32.mak. Is it a bug ? Maybe I miss out a step to bootstrap ?
Aug 22 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"BBasile"  wrote in message news:fmoabuqgvlztgmqyjcwf forum.dlang.org...

 By the way, currently under win32 it's not possible to build DDMD unless 
 the line

 ---
 #HOST_DC=dmd
 ---

 is uncommented. Because there is a bunch of commands using dmd compile and 
 run (-run) in win32.mak. Is it a bug ? Maybe I miss out a step to 
 bootstrap ?
The missing step is to set HOST_DC in the environment. My current HOST_DC is c:\d\dmd2.067beta\windows\bin\dmd.exe -conf=c:\d\dmd2.067beta\windows\bin\sc.ini
Aug 23 2015
parent reply "BBasile" <bb.temp gmx.com> writes:
On Sunday, 23 August 2015 at 08:56:14 UTC, Daniel Murphy wrote:
 "BBasile"  wrote in message 
 news:fmoabuqgvlztgmqyjcwf forum.dlang.org...

 By the way, currently under win32 it's not possible to build 
 DDMD unless the line

 ---
 #HOST_DC=dmd
 ---

 is uncommented. Because there is a bunch of commands using dmd 
 compile and run (-run) in win32.mak. Is it a bug ? Maybe I 
 miss out a step to bootstrap ?
The missing step is to set HOST_DC in the environment. My current HOST_DC is c:\d\dmd2.067beta\windows\bin\dmd.exe -conf=c:\d\dmd2.067beta\windows\bin\sc.ini
I don't know what happend on my setup but now it's ok. I use the following script http://wiki.dlang.org/Building_DMD#Using_a_D_script It looks like some old garbages were leading to ? well I don't know.
Aug 23 2015
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 8/23/2015 2:36 AM, BBasile wrote:
 On Sunday, 23 August 2015 at 08:56:14 UTC, Daniel Murphy wrote:
 "BBasile"  wrote in message news:fmoabuqgvlztgmqyjcwf forum.dlang.org...

 By the way, currently under win32 it's not possible to build DDMD unless the
 line

 ---
 #HOST_DC=dmd
 ---

 is uncommented. Because there is a bunch of commands using dmd compile and
 run (-run) in win32.mak. Is it a bug ? Maybe I miss out a step to bootstrap ?
The missing step is to set HOST_DC in the environment. My current HOST_DC is c:\d\dmd2.067beta\windows\bin\dmd.exe -conf=c:\d\dmd2.067beta\windows\bin\sc.ini
I don't know what happend on my setup but now it's ok. I use the following script http://wiki.dlang.org/Building_DMD#Using_a_D_script It looks like some old garbages were leading to ? well I don't know.
It's building nicely under win32 in my setup. Much smoother than I expected!
Aug 23 2015
parent "Temtaime" <temtaime gmail.com> writes:
On Sunday, 23 August 2015 at 09:44:55 UTC, Walter Bright wrote:
 On 8/23/2015 2:36 AM, BBasile wrote:
 On Sunday, 23 August 2015 at 08:56:14 UTC, Daniel Murphy wrote:
 "BBasile"  wrote in message 
 news:fmoabuqgvlztgmqyjcwf forum.dlang.org...

 [...]
The missing step is to set HOST_DC in the environment. My current HOST_DC is c:\d\dmd2.067beta\windows\bin\dmd.exe -conf=c:\d\dmd2.067beta\windows\bin\sc.ini
I don't know what happend on my setup but now it's ok. I use the following script http://wiki.dlang.org/Building_DMD#Using_a_D_script It looks like some old garbages were leading to ? well I don't know.
It's building nicely under win32 in my setup. Much smoother than I expected!
Yes, it builds with dmc. But nobody uses dmc with windows. It doesn't build with msvc due longdouble and other troubles. Please, fix it.
Aug 23 2015
prev sibling next sibling parent reply "rsw0x" <anonymous anonymous.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
does it build with ldc or gdc?
Aug 22 2015
parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 23 August 2015 at 07:42, rsw0x via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:

 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to make
 this happen. More thanks to Martin Nowak for helping shepherd it through
 the final stages, and to several others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I hope
 you aren't too unhappy about the extra work - it's in a good cause!
does it build with ldc or gdc?
It should do with whatever is in master at least. But until I'm able to release new binaries, there is at least new TravisCI integration testing of PRs that test building ddmd with ldc and gdc.
Aug 22 2015
parent Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 08/23/2015 08:48 AM, Iain Buclaw via Digitalmars-d-announce wrote:
 It should do with whatever is in master at least.  But until I'm able to
 release new binaries, there is at least new TravisCI integration testing of
 PRs that test building ddmd with ldc and gdc.
But it currently fails. https://travis-ci.org/D-Programming-Language/dmd/builds/76838751 https://travis-ci.org/D-Programming-Language/dmd/jobs/76838753#L287
Aug 23 2015
prev sibling next sibling parent Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 08/23/2015 01:17 AM, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
http://semitwist.com/download/av/you-did-it.mp4
Aug 22 2015
prev sibling next sibling parent reply "Joakim" <dlang joakim.fea.st> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Great work, thanks to Daniel and others who helped out, can't wait to use ddmd and see all the changes that come with it in the next couple releases. Can we look forward to a complete ddmd, ie backend and everything ported to D too, anytime soon?
Aug 23 2015
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 8/23/2015 12:48 AM, Joakim wrote:
 Can we look forward to a complete ddmd, ie backend and everything ported to D
 too, anytime soon?
Once this all settles down and we're comfortable with it, I'd like to port the rest of dmd to D. No schedule for now.
Aug 23 2015
prev sibling next sibling parent "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Joakim"  wrote in message news:sfhycfhmabpfxxuxntco forum.dlang.org...

 Great work, thanks to Daniel and others who helped out, can't wait to use 
 ddmd and see all the changes that come with it in the next couple 
 releases.
I can't wait to use foreach internally! No more manual for loops!
 Can we look forward to a complete ddmd, ie backend and everything ported 
 to D too, anytime soon?
I've started on the glue layer, and most of that should be done soon, but the backend brings a bunch of complications: - The code style is nothing like the frontend - It makes heavy use of the preprocessor - We don't have a good way of testing it, which makes refactoring risky My current plan is to create a nice text form of the backend's IR, then convert DMC's test suite to this format, with before and after snapshots. I can then feed these tests through DMD's backend (no need for a C++ frontend any more) to check for regressions, letting me start modernizing the code and converting it to D. This is going to take a while.
Aug 23 2015
prev sibling parent "Laeeth Isharc" <Laeeth.nospam nospam-laeeth.com> writes:
 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
https://www.reddit.com/r/programming/comments/3ioy2l/d_compiler_dmd_moves_front_end_to_pure_d_from_c/ Ready for London morning.
Aug 27 2015
prev sibling next sibling parent "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!
Congratulations!! :)
Aug 23 2015
prev sibling next sibling parent "extrawurst" <stephan extrawurst.org> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Thats great news!
Aug 23 2015
prev sibling next sibling parent reply "Dicebot" <public dicebot.lv> writes:
Great!

Daniel, does that mean that I can remove DDMD testing job from my 
CI? :)
Aug 23 2015
next sibling parent Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 08/23/2015 11:09 AM, Dicebot wrote:
 Great!
 
 Daniel, does that mean that I can remove DDMD testing job from my CI? :)
I think so.
Aug 23 2015
prev sibling parent "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Dicebot"  wrote in message news:jdgpeyxvdltshldnfhma forum.dlang.org... 

 Great!
 
 Daniel, does that mean that I can remove DDMD testing job from my 
 CI? :)
Yes, thanks!
Aug 23 2015
prev sibling next sibling parent reply "Mike" <none none.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
Very Cool! And thank you to all who worked towards it. There are still a number of .h files in the front end. What will happen with those? Do they need to be maintained?
Aug 23 2015
parent "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Mike"  wrote in message news:hkyvytmqbstkelkummkq forum.dlang.org...

 There are still a number of .h files in the front end.  What will happen 
 with those?  Do they need to be maintained?
For now they must be maintained by hand, if there is any possibility of the glue layers or backends needing them. In the future we will hopefully auto-generate them.
Aug 23 2015
prev sibling next sibling parent "jmh530" <john.michael.hall gmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!
Congratulations.
Aug 23 2015
prev sibling next sibling parent "Robert burner Schadek" <rburners gmail.com> writes:
Awesome job Daniel!
Aug 23 2015
prev sibling next sibling parent =?UTF-8?Q?S=c3=b6nke_Ludwig?= <sludwig rejectedsoftware.com> writes:
Am 23.08.2015 um 07:17 schrieb Walter Bright:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to
 make this happen. More thanks to Martin Nowak for helping shepherd it
 through the final stages, and to several others who have pitched in on
 this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I
 hope you aren't too unhappy about the extra work - it's in a good cause!
Congratulations!
Aug 23 2015
prev sibling next sibling parent Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On 23-Aug-2015 08:17, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to
 make this happen. More thanks to Martin Nowak for helping shepherd it
 through the final stages, and to several others who have pitched in on
 this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I
 hope you aren't too unhappy about the extra work - it's in a good cause!
Congratulations! Looks like my last excuse for not hacking on DMD evaporated.. Ouch ;) -- Dmitry Olshansky
Aug 23 2015
prev sibling next sibling parent "Per =?UTF-8?B?Tm9yZGzDtnci?= <per.nordlow gmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!
Wow! I'll spread the Word!
Aug 23 2015
prev sibling next sibling parent "Jonas Drewsen" <nospam4321 hotmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Congratulations!
Aug 24 2015
prev sibling next sibling parent "Dejan Lekic" <dejan.lekic gmail.com> writes:
Good news indeed! Well done everybody!
Aug 24 2015
prev sibling next sibling parent =?UTF-8?B?Ik5vcmRsw7Z3Ig==?= <per.nordlow gmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!
Worth mentioning: The final call to dmd that compiles 117 klines (~80 files) of D code in one show and links dmd takes 1.1 seconds on my laptop. Pretty darn cool. Thank you!
Aug 24 2015
prev sibling next sibling parent "Masahiro Nakagawa" <repeatedly gmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Awesome! Thanks to Daniel and people who working on this. This is a great step for D :)
Aug 24 2015
prev sibling next sibling parent Bruno Medeiros <bruno.do.medeiros+dng gmail.com> writes:
On 23/08/2015 06:17, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to
 make this happen. More thanks to Martin Nowak for helping shepherd it
 through the final stages, and to several others who have pitched in on
 this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I
 hope you aren't too unhappy about the extra work - it's in a good cause!
Cool stuff! What's the plan going forward, for those not so much up to date with what's going on? Is the next major release of DMD gonna be D-DMD based then? Which compiler is going to be used to compile D-DMD? -- Bruno Medeiros https://twitter.com/brunodomedeiros
Aug 27 2015
prev sibling next sibling parent reply Bruno Medeiros <bruno.do.medeiros+dng gmail.com> writes:
On 23/08/2015 06:17, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 years to
 make this happen. More thanks to Martin Nowak for helping shepherd it
 through the final stages, and to several others who have pitched in on
 this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd pull
 requests. Thanks in advance for the submitters who'll be doing that. I
 hope you aren't too unhappy about the extra work - it's in a good cause!
Cool stuff! What's the plan going forward, for those not so much up to date with what's going on? Is the next major release of DMD gonna be D-DMD based then? Which compiler is going to be used to compile D-DMD? -- Bruno Medeiros https://twitter.com/brunodomedeiros
Aug 27 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Bruno Medeiros"  wrote in message news:mrn30f$26ff$2 digitalmars.com...

 Cool stuff!
Yeah!
 What's the plan going forward, for those not so much up to date with 
 what's going on? Is the next major release of DMD gonna be D-DMD based 
 then? Which compiler is going to be used to compile D-DMD?
The next major release (2.069) will use the D-based frontend. We're planning to use GDC and/or LDC releases based on the 2.067 frontend to compile DMD on most platforms.
Aug 27 2015
parent reply Johannes Pfau <nospam example.com> writes:
Am Fri, 28 Aug 2015 11:21:52 +1000
schrieb "Daniel Murphy" <yebbliesnospam gmail.com>:

 "Bruno Medeiros"  wrote in message
 news:mrn30f$26ff$2 digitalmars.com...
 
 Cool stuff!
Yeah!
 What's the plan going forward, for those not so much up to date
 with what's going on? Is the next major release of DMD gonna be
 D-DMD based then? Which compiler is going to be used to compile
 D-DMD?
The next major release (2.069) will use the D-based frontend. We're planning to use GDC and/or LDC releases based on the 2.067 frontend to compile DMD on most platforms.
Current GDC master can compile DDMD, although it uses the 2.066.1 frontend. Iain backported the relevant C++ mangle changes: https://github.com/D-Programming-Language/dmd/pull/4957
Aug 28 2015
next sibling parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Johannes Pfau"  wrote in message news:mrp3m1$184s$1 digitalmars.com...

 Current GDC master can compile DDMD, although it uses the 2.066.1
 frontend. Iain backported the relevant C++ mangle changes:

 https://github.com/D-Programming-Language/dmd/pull/4957
Yeah, I guess the more accurate statement is that DDMD relies on some fixes that are not in DMD 2.066. At some point we will probably start relying on bug fixes or features that aren't available before 2.067 in any compiler.
Aug 28 2015
parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 28 August 2015 at 11:15, Daniel Murphy via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 "Johannes Pfau"  wrote in message news:mrp3m1$184s$1 digitalmars.com...

 Current GDC master can compile DDMD, although it uses the 2.066.1
 frontend. Iain backported the relevant C++ mangle changes:

 https://github.com/D-Programming-Language/dmd/pull/4957
Yeah, I guess the more accurate statement is that DDMD relies on some fixes that are not in DMD 2.066. At some point we will probably start relying on bug fixes or features that aren't available before 2.067 in any compiler.
Best to start using GDC in the CI development of DMD now though so we catch them when it happens!
Aug 28 2015
parent "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Iain Buclaw via Digitalmars-d-announce" 
<digitalmars-d-announce puremagic.com> wrote in message 
news:mailman.598.1440753894.13986.digitalmars-d-announce puremagic.com...

 Best to start using GDC in the CI development of DMD now though so we 
 catch them when it
 happens!
I've played the 'upgrade the autotester' game before, and I'm not in a hurry to go again. But yes I absolutely agree that should happen.
Aug 28 2015
prev sibling parent reply "David Nadlinger" <code klickverbot.at> writes:
On Friday, 28 August 2015 at 07:47:13 UTC, Johannes Pfau wrote:
 Current GDC master can compile DDMD, although it uses the 
 2.066.1 frontend. Iain backported the relevant C++ mangle 
 changes:

 https://github.com/D-Programming-Language/dmd/pull/4957
The first LDC 2.067.1 beta is imminent. — David
Aug 28 2015
parent "Chris" <wendlec tcd.ie> writes:
On Friday, 28 August 2015 at 13:27:42 UTC, David Nadlinger wrote:
 On Friday, 28 August 2015 at 07:47:13 UTC, Johannes Pfau wrote:
 Current GDC master can compile DDMD, although it uses the 
 2.066.1 frontend. Iain backported the relevant C++ mangle 
 changes:

 https://github.com/D-Programming-Language/dmd/pull/4957
The first LDC 2.067.1 beta is imminent. — David
Yay!
Aug 28 2015
prev sibling next sibling parent reply "Laeeth Isharc" <nospamlaeeth nospamlaeeth.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Congratulations. I am very impressed by the young talent in the D community. I asked one such chap how he knew so much, and he attributed it to learning from being around such top notch guys as you, Andrei, and the other contributors. Should someone post to Reddit ?
Aug 27 2015
next sibling parent reply Russel Winder via Digitalmars-d-announce writes:
On Thu, 2015-08-27 at 21:07 +0000, Laeeth Isharc via Digitalmars-d-announce
wrote:
=20
[=E2=80=A6]
 I am very impressed by the young talent in the D community.  I=20
 asked one such chap how he knew so much, and he attributed it to=20
 learning from being around such top notch guys as you, Andrei,=20
 and the other contributors.
At what age does one become a telentless oldie? --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t:+44 20 7585 2200 voip:sip: russel.winder ekiga.net 41 Buckmaster Road m:+44 7770 465 077 xmpp:russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype:russel_winder
Aug 28 2015
parent Walter Bright <newshound2 digitalmars.com> writes:
On 8/28/2015 5:44 AM, Russel Winder via Digitalmars-d-announce wrote:
 At what age does one become a telentless oldie?
I plan to continue until my mind no longer works.
Aug 28 2015
prev sibling next sibling parent Iain Buclaw via Digitalmars-d-announce writes:
On 28 August 2015 at 14:44, Russel Winder via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 On Thu, 2015-08-27 at 21:07 +0000, Laeeth Isharc via Digitalmars-d-announ=
ce
 wrote:

 [=E2=80=A6]
 I am very impressed by the young talent in the D community.  I
 asked one such chap how he knew so much, and he attributed it to
 learning from being around such top notch guys as you, Andrei,
 and the other contributors.
At what age does one become a telentless oldie? -- Russel.
I'd have a tentative guess and say when you're Bio begins with "Past my sell-by date." http://stackoverflow.com/users/1444574/steve-teale
Aug 28 2015
prev sibling parent reply Russel Winder via Digitalmars-d-announce writes:
On Fri, 2015-08-28 at 14:59 +0200, Iain Buclaw via Digitalmars-d-announce
wrote:
=20
 [=E2=80=A6]
I'd have a tentative guess and say when you're Bio begins with "Past my sell-by date." =20 http://stackoverflow.com/users/1444574/steve-teale
Hummm=E2=80=A6 I was programming FORTRAN in 1969 =E2=80=93 punch cards, the= whole hours turnaround per run deal, which I would never like to recreate. Maybe I shall have to reconcile myself to having dissipated all my talent so as to become talentless=E2=80=A6 =E2=80=A6on the other hand I still do consultancy and training for money so= I am selling myself, I have not reached by sell-by-date just yet. :-) --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t:+44 20 7585 2200 voip:sip: russel.winder ekiga.net 41 Buckmaster Road m:+44 7770 465 077 xmpp:russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype:russel_winder
Aug 28 2015
parent Walter Bright <newshound2 digitalmars.com> writes:
On 8/28/2015 8:59 AM, Russel Winder via Digitalmars-d-announce wrote:
 Hummm… I was programming FORTRAN in 1969 – punch cards, the whole hours
 turnaround per run deal, which I would never like to recreate. Maybe I
 shall have to reconcile myself to having dissipated all my talent so as to
 become talentless…
I, too, am a master of useless, obsolete technology like DOS programming.
Aug 28 2015
prev sibling next sibling parent reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
What is the relation between the .h files that were left intact, and the backend, GDC, and LDC? When the backend is converted to D, will the DMD source drop the C++ header files, or will (some?) of those be left behind because GDC and LDC will always use some C++ interfaces in their glue code?
Aug 28 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
""Luís Marques " wrote in message 
news:ckyiqzpchfahzfjmmuvc forum.dlang.org...

 What is the relation between the .h files that were left intact, and the 
 backend, GDC, and LDC? When the backend is converted to D, will the DMD 
 source drop the C++ header files, or will (some?) of those be left behind 
 because GDC and LDC will always use some C++ interfaces in their glue 
 code?
The frontend header files will need to stay intact, and GDC/LDC will continue to use them. All the backend header files can be deleted once the backend has been converted. I'm planning to generate the C++ headers from the D source rather than maintain them by hand.
Aug 28 2015
next sibling parent reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Saturday, 29 August 2015 at 03:47:46 UTC, Daniel Murphy wrote:
 The frontend header files will need to stay intact, and GDC/LDC 
 will continue to use them.  All the backend header files can be 
 deleted once the backend has been converted.
Probably not all of them, though, no? For instance, utf.h is not needed by the GDC / LDC glue code, is it?
Aug 28 2015
parent "Daniel Murphy" <yebbliesnospam gmail.com> writes:
""Luís Marques " wrote in message 
news:fnhnundiapulkyqmilff forum.dlang.org...

 Probably not all of them, though, no? For instance, utf.h is not needed by 
 the GDC / LDC glue code, is it?
We don't have a policy on this yet. It won't matter so much if we can auto-generate the headers.
Aug 28 2015
prev sibling parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 29 Aug 2015 5:50 am, "Daniel Murphy via Digitalmars-d-announce" <
digitalmars-d-announce puremagic.com> wrote:
 ""Lu=C3=ADs Marques " wrote in message
news:ckyiqzpchfahzfjmmuvc forum.dlang.org...
 What is the relation between the .h files that were left intact, and the
backend, GDC, and LDC? When the backend is converted to D, will the DMD source drop the C++ header files, or will (some?) of those be left behind because GDC and LDC will always use some C++ interfaces in their glue code?
 The frontend header files will need to stay intact, and GDC/LDC will
continue to use them. All the backend header files can be deleted once the backend has been converted.
 I'm planning to generate the C++ headers from the D source rather than
maintain them by hand. You could use UDAs for that!
Aug 29 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Iain Buclaw via Digitalmars-d-announce" 
<digitalmars-d-announce puremagic.com> wrote in message 
news:mailman.640.1440835567.13986.digitalmars-d-announce puremagic.com...

 I'm planning to generate the C++ headers from the D source rather than 
 maintain them by hand.
You could use UDAs for that!
How?
Aug 29 2015
parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 29 August 2015 at 12:25, Daniel Murphy via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 "Iain Buclaw via Digitalmars-d-announce" <
 digitalmars-d-announce puremagic.com> wrote in message
 news:mailman.640.1440835567.13986.digitalmars-d-announce puremagic.com...

 I'm planning to generate the C++ headers from the D source rather than >
 maintain them by hand.

 You could use UDAs for that!
How?
Just an idea to selectively tag any classes or functions you want to export to C++, then let the conversion tool do the rest. This is as opposed to going back to some sort of magicport.json format maintained outside the normal sources.
Aug 29 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Iain Buclaw via Digitalmars-d-announce" 
<digitalmars-d-announce puremagic.com> wrote in message 
news:mailman.647.1440844869.13986.digitalmars-d-announce puremagic.com...

 Just an idea to selectively  tag any classes or functions you want to 
 export to C++, then let the
 conversion tool do the rest.  This is as opposed to going back to some 
 sort of magicport.json format
 maintained outside the normal sources.
I'm just planning to implement this in dmd and have it dump out all extern(C++) declarations. (and structs and constants)
Aug 29 2015
parent reply Jacob Carlborg <doob me.com> writes:
On 2015-08-29 12:44, Daniel Murphy wrote:

 I'm just planning to implement this in dmd and have it dump out all
 extern(C++) declarations. (and structs and constants)
I'm pretty sure we already have a tool that generates C/C++ headers for D modules. -- /Jacob Carlborg
Aug 29 2015
parent reply "Daniel Murphy" <yebbliesnospam gmail.com> writes:
"Jacob Carlborg"  wrote in message news:mrsigg$1574$1 digitalmars.com...

 I'm pretty sure we already have a tool that generates C/C++ headers for D 
 modules.
Adam started one, I don't think it got to the point where it would work for this, and I don't agree that the json output is a good way to do it.
Aug 29 2015
parent reply "Laeeth Isharc" <Laeeth.nospam nospam-laeeth.com> writes:
On Saturday, 29 August 2015 at 16:07:37 UTC, Daniel Murphy wrote:
 "Jacob Carlborg"  wrote in message 
 news:mrsigg$1574$1 digitalmars.com...

 I'm pretty sure we already have a tool that generates C/C++ 
 headers for D modules.
Adam started one, I don't think it got to the point where it would work for this, and I don't agree that the json output is a good way to do it.
I guess he means dstep...
Aug 29 2015
parent reply Jacob Carlborg <doob me.com> writes:
On 2015-08-29 18:39, Laeeth Isharc wrote:

 I guess he means dstep...
No, this is a tool for generating C/C++ header files from D modules, DStep does the opposite. BTW, I'm the author of DStep ;) -- /Jacob Carlborg
Aug 30 2015
parent "Adam D. Ruppe" <destructionator gmail.com> writes:
On Sunday, 30 August 2015 at 18:44:48 UTC, Jacob Carlborg wrote:
 No, this is a tool for generating C/C++ header files from D 
 modules, DStep does the opposite.
I did one to the point where it basically worked for the support dmd had for C++ interop a couple years ago, but since that's changed so much it would probably be wholly inadequate now (if it even still works, since dmd changes the json output every so often. I'd prefer to do it with CT reflection if I were to start again).
Aug 30 2015
prev sibling next sibling parent reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
Is there a rough prediction of when the use of phobos in ddmd will start to be accepted?
Sep 01 2015
parent reply Steven Schveighoffer <schveiguy yahoo.com> writes:
On 9/1/15 6:48 AM, "Luís Marques  <luis luismarques.eu> wrote:
 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
Is there a rough prediction of when the use of phobos in ddmd will start to be accepted?
I'm not a dmd dev, but I'm not sure it will be accepted, since phobos is very unstable. We have to be cautious about making dmd breakable easily by a change to phobos. Of course, I think there is a baseline dmd/gdc/ldc that must be used to build dmd, so perhaps as long as you use phobos features that work there, it will be OK. -Steve
Sep 01 2015
next sibling parent reply Rory McGuire via Digitalmars-d-announce writes:
On Tue, Sep 1, 2015 at 3:44 PM, Steven Schveighoffer via
Digitalmars-d-announce <digitalmars-d-announce puremagic.com> wrote:

 [snip]
 I'm not a dmd dev, but I'm not sure it will be accepted, since phobos is
 very unstable. We have to be cautious about making dmd breakable easily by
 a change to phobos.
 [snip]
-Steve

Surely this is a code coverage issue then?
Are there any unit tests  in ddmd?
Sep 01 2015
parent Daniel Murphy <yebbliesnospam gmail.com> writes:
On 1/09/2015 11:57 PM, Rory McGuire via Digitalmars-d-announce wrote:
 Surely this is a code coverage issue then?
 Are there any unit tests  in ddmd?
There is an enormous test suite, but there are also plenty of parts with zero coverage.
Sep 04 2015
prev sibling next sibling parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 1 September 2015 at 15:57, Rory McGuire via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 On Tue, Sep 1, 2015 at 3:44 PM, Steven Schveighoffer via
 Digitalmars-d-announce <digitalmars-d-announce puremagic.com> wrote:

 [snip]
 I'm not a dmd dev, but I'm not sure it will be accepted, since phobos is
 very unstable. We have to be cautious about making dmd breakable easily by
 a change to phobos.
 [snip]
-Steve

 Surely this is a code coverage issue then?
 Are there any unit tests  in ddmd?
From how I see it, Phobos is constantly adding, silently breaking,
deprecating, and removing. We need long term backwards compatibility, and Phobos just doesn't fit in that picture (yet).
Sep 01 2015
parent reply "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Tuesday, 1 September 2015 at 14:33:47 UTC, Iain Buclaw wrote:
 deprecating, and removing.  We need long term backwards 
 compatibility, and Phobos just doesn't fit in that picture 
 (yet).
Why do you need long term backwards compatibility?
Sep 01 2015
parent reply "Adam D. Ruppe" <destructionator gmail.com> writes:
On Tuesday, 1 September 2015 at 14:39:57 UTC, Ola Fosheim Grøstad 
wrote:
 Why do you need long term backwards compatibility?
It would be nice for bootstrapping... now that we need dmd to build dmd, it'd be really annoying if you need to install version X-3 to compile version X-2 to compile X-1 to finally compile version X just because of some stdlib instability.
Sep 01 2015
next sibling parent "Dicebot" <public dicebot.lv> writes:
On Tuesday, 1 September 2015 at 14:52:09 UTC, Adam D. Ruppe wrote:
 On Tuesday, 1 September 2015 at 14:39:57 UTC, Ola Fosheim 
 Grøstad wrote:
 Why do you need long term backwards compatibility?
It would be nice for bootstrapping... now that we need dmd to build dmd, it'd be really annoying if you need to install version X-3 to compile version X-2 to compile X-1 to finally compile version X just because of some stdlib instability.
Don't forget about differences in FE versions between dmd/ldc/gdc - and the fact you want distribute most performant build possible.
Sep 01 2015
prev sibling parent reply "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Tuesday, 1 September 2015 at 14:52:09 UTC, Adam D. Ruppe wrote:
 On Tuesday, 1 September 2015 at 14:39:57 UTC, Ola Fosheim 
 Grøstad wrote:
 Why do you need long term backwards compatibility?
It would be nice for bootstrapping... now that we need dmd to build dmd, it'd be really annoying if you need to install version X-3 to compile version X-2 to compile X-1 to finally compile version X just because of some stdlib instability.
If that is an issue (I am not sure I understand why that scenario would arise) can't you pick a version of Phobos and make it part of the distribution, or mark some parts of Phobos stable and others unstable? I assume such stability issues also are relevant for commercial projects, not only DMD. Seems to me that the most important advantage of moving to D is to attract developers that are unfamiliar with C++, so using selected parts of Phobos would make it a lot easier and fun for them to contribute. I assume refactoring, high quality documentation and perhaps a tutorial too, of course. Seems to me that lowering the "anxiety threshold" could be an important move.
Sep 01 2015
parent reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Tuesday, 1 September 2015 at 15:02:37 UTC, Ola Fosheim Grøstad 
wrote:
 Seems to me that the most important advantage of moving to D is 
 to attract developers that are unfamiliar with C++, so using 
 selected parts of Phobos would make it a lot easier and fun for 
 them to contribute.

 I assume refactoring, high quality documentation and perhaps a 
 tutorial too, of course. Seems to me that lowering the "anxiety 
 threshold" could be an important move.
Exactly. I was surprised to find out I couldn't use Phobos in ddmd. Raw D is still more pleasant than programming in C++, but not nearly as much fun as writing normal D code.
Sep 01 2015
parent "Freddy" <Hexagonalstar64 gmail.com> writes:
On Tuesday, 1 September 2015 at 15:48:42 UTC, Luís Marques wrote:
 Exactly. I was surprised to find out I couldn't use Phobos in 
 ddmd. Raw D is still more pleasant than programming in C++, but 
 not nearly as much fun as writing normal D code.
Wait can the GC be used in ddmd?
Sep 03 2015
prev sibling next sibling parent reply Jonathan M Davis via Digitalmars-d-announce writes:
On Tuesday, September 01, 2015 09:44:17 Steven Schveighoffer via
Digitalmars-d-announce wrote:
 On 9/1/15 6:48 AM, "Luís Marques  <luis luismarques.eu> wrote:
 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
Is there a rough prediction of when the use of phobos in ddmd will start to be accepted?
I'm not a dmd dev, but I'm not sure it will be accepted, since phobos is very unstable. We have to be cautious about making dmd breakable easily by a change to phobos. Of course, I think there is a baseline dmd/gdc/ldc that must be used to build dmd, so perhaps as long as you use phobos features that work there, it will be OK.
Plenty of Phobos is stable and hasn't changed in quite a while. We do sometimes deprecate stuff still, but there isn't much that gets deprecated at this point, and the deprecation cycle is about two years. The common problem would be regressions, and the compiler gets those as much or more often than Phobos does. But it is true that some stuff in Phobos changes occasionally, and that could affect how new a compiler you need to compile the current dmd. Regardless of that though, I know that at least some of the dmd developers are against using Phobos simply because they don't want the dependency. It simplifies things if Phobos isn't in the mix. If you have to track down and fix a regression in the compiler, that's easier to do if you don't have to worry about the standard library being in the mix. The less that the compiler depends on, the less that the compiler devs have to worry about affecting the compiler. And if we need anything to be sure of anything working right, it's the compiler. Sure, there are some things in the standard library that might be nice to use in the compiler, but that doesn't mean that it's necessarily worth pulling in Phobos as a dependency, and if it's something that's really useful, maybe it's worth duplicating in the compiler code - or even making a version of it that's tailored to the compiler's needs. - Jonathan M Davis
Sep 01 2015
parent "Temtaime" <temtaime gmail.com> writes:
On Wednesday, 2 September 2015 at 03:31:12 UTC, Jonathan M Davis 
wrote:
 On Tuesday, September 01, 2015 09:44:17 Steven Schveighoffer 
 via Digitalmars-d-announce wrote:
 On 9/1/15 6:48 AM, "Luís Marques  <luis luismarques.eu> wrote:
 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright 
 wrote:
 We have made the switch from C++ DMD to D DMD!
Is there a rough prediction of when the use of phobos in ddmd will start to be accepted?
I'm not a dmd dev, but I'm not sure it will be accepted, since phobos is very unstable. We have to be cautious about making dmd breakable easily by a change to phobos. Of course, I think there is a baseline dmd/gdc/ldc that must be used to build dmd, so perhaps as long as you use phobos features that work there, it will be OK.
Plenty of Phobos is stable and hasn't changed in quite a while. We do sometimes deprecate stuff still, but there isn't much that gets deprecated at this point, and the deprecation cycle is about two years. The common problem would be regressions, and the compiler gets those as much or more often than Phobos does. But it is true that some stuff in Phobos changes occasionally, and that could affect how new a compiler you need to compile the current dmd. Regardless of that though, I know that at least some of the dmd developers are against using Phobos simply because they don't want the dependency. It simplifies things if Phobos isn't in the mix. If you have to track down and fix a regression in the compiler, that's easier to do if you don't have to worry about the standard library being in the mix. The less that the compiler depends on, the less that the compiler devs have to worry about affecting the compiler. And if we need anything to be sure of anything working right, it's the compiler. Sure, there are some things in the standard library that might be nice to use in the compiler, but that doesn't mean that it's necessarily worth pulling in Phobos as a dependency, and if it's something that's really useful, maybe it's worth duplicating in the compiler code - or even making a version of it that's tailored to the compiler's needs. - Jonathan M Davis
LOL. Using « pure » D in DDMD is ugly. Then why even compiler was converted ? Using phobos in ddmd is helpful - it will help to detect regressions in phobos. There's an autotester so i don't think it can break the things.
Sep 02 2015
prev sibling parent reply Iain Buclaw via Digitalmars-d-announce writes:
On 2 Sep 2015 5:31 am, "Jonathan M Davis via Digitalmars-d-announce" <
digitalmars-d-announce puremagic.com> wrote:
 On Tuesday, September 01, 2015 09:44:17 Steven Schveighoffer via
Digitalmars-d-announce wrote:
 On 9/1/15 6:48 AM, "Lu=C3=ADs Marques  <luis luismarques.eu> wrote:
 On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 We have made the switch from C++ DMD to D DMD!
Is there a rough prediction of when the use of phobos in ddmd will
start
 to be accepted?
I'm not a dmd dev, but I'm not sure it will be accepted, since phobos i=
s
 very unstable. We have to be cautious about making dmd breakable easily
 by a change to phobos.

 Of course, I think there is a baseline dmd/gdc/ldc that must be used to
 build dmd, so perhaps as long as you use phobos features that work
 there, it will be OK.
Plenty of Phobos is stable and hasn't changed in quite a while. We do sometimes deprecate stuff still, but there isn't much that gets deprecate=
d
 at this point, and the deprecation cycle is about two years. The common
 problem would be regressions, and the compiler gets those as much or more
 often than Phobos does. But it is true that some stuff in Phobos changes
 occasionally, and that could affect how new a compiler you need to compil=
e
 the current dmd.
Don't forget, Phobos library maintainers love to use new features everywhere. Tagging many functions with nogc almost weeks after it was introduced in master was the last major backwards breaking change you did that I'm aware of. Iain.
Sep 01 2015
parent reply Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On 02-Sep-2015 07:52, Iain Buclaw via Digitalmars-d-announce wrote:
 On 2 Sep 2015 5:31 am, "Jonathan M Davis via Digitalmars-d-announce"
 <digitalmars-d-announce puremagic.com
 <mailto:digitalmars-d-announce puremagic.com>> wrote:
  >
  > On Tuesday, September 01, 2015 09:44:17 Steven Schveighoffer via
 Digitalmars-d-announce wrote:
  > > On 9/1/15 6:48 AM, "Luís Marques  <luis luismarques.eu
 <mailto:luis luismarques.eu>> wrote:
  > > > On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
  > > >> We have made the switch from C++ DMD to D DMD!
  > > >
  > > > Is there a rough prediction of when the use of phobos in ddmd
 will start
  > > > to be accepted?
  > >
  > > I'm not a dmd dev, but I'm not sure it will be accepted, since
 phobos is
  > > very unstable. We have to be cautious about making dmd breakable easily
  > > by a change to phobos.
  > >
  > > Of course, I think there is a baseline dmd/gdc/ldc that must be used to
  > > build dmd, so perhaps as long as you use phobos features that work
  > > there, it will be OK.
  >
  > Plenty of Phobos is stable and hasn't changed in quite a while. We do
  > sometimes deprecate stuff still, but there isn't much that gets
 deprecated
  > at this point, and the deprecation cycle is about two years. The common
  > problem would be regressions, and the compiler gets those as much or more
  > often than Phobos does. But it is true that some stuff in Phobos changes
  > occasionally, and that could affect how new a compiler you need to
 compile
  > the current dmd.
  >

 Don't forget, Phobos library maintainers love to use new features
 everywhere.  Tagging many functions with  nogc almost weeks after it was
 introduced in master was the last major backwards breaking change you
 did that I'm aware of.
Because the compiler and library releases go in lockstep we'd have to wait for another release cycle to even field-test nogc. Not acceptable really. Phobos ends up battle testing every new feature and if it wasn't new features will be definitely shipped in a broken state. Let's not forget that new D frontend features still have many bugs that stay undetected even after testing in Phobos. -- Dmitry Olshansky
Sep 02 2015
parent reply Rory McGuire via Digitalmars-d-announce writes:
On Wed, Sep 2, 2015 at 12:37 PM, Dmitry Olshansky via
Digitalmars-d-announce <digitalmars-d-announce puremagic.com> wrote:

 Because the compiler and library releases go in lockstep we'd have to wait
 for another release cycle to even field-test  nogc. Not acceptable really.

 Phobos ends up battle testing every new feature and if it wasn't new
 features will be definitely shipped in a broken state. Let's not forget
 that new D frontend features still have many bugs that stay undetected even
 after testing in Phobos.

 --
 Dmitry Olshansky
Surely the compiler should always rely on the previous compiler + standard library versions. Is there really a valid reason not to do this? Surely if the dog food is so bad no one should be eating?
Sep 02 2015
next sibling parent "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Wednesday, 2 September 2015 at 13:23:50 UTC, Rory McGuire 
wrote:
 Surely the compiler should always rely on the previous compiler 
 + standard library versions.

 Is there really a valid reason not to do this? Surely if the 
 dog food is so bad no one should be eating?
I am hoping that DMD will be refactored to be a showcase for idiomatic D. I think that would help a lot, but in terms of attracting new developers, PR and general eco system improvements. Andrei mentioned a new versions of his book being on the horizon. I assume that also means that the language spec will change and that there will be a need for a new hands to help implement it.
Sep 02 2015
prev sibling next sibling parent Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On 02-Sep-2015 16:23, Rory McGuire via Digitalmars-d-announce wrote:
 On Wed, Sep 2, 2015 at 12:37 PM, Dmitry Olshansky via
 Digitalmars-d-announce <digitalmars-d-announce puremagic.com
 <mailto:digitalmars-d-announce puremagic.com>> wrote:


     Because the compiler and library releases go in lockstep we'd have
     to wait for another release cycle to even field-test  nogc. Not
     acceptable really.

     Phobos ends up battle testing every new feature and if it wasn't new
     features will be definitely shipped in a broken state. Let's not
     forget that new D frontend features still have many bugs that stay
     undetected even after testing in Phobos.

     --
     Dmitry Olshansky


 Surely the compiler should always rely on the previous compiler +
 standard library versions.

 Is there really a valid reason not to do this? Surely if the dog food is
 so bad no one should be eating?
Anyhow I'd let compiler team decide this. -- Dmitry Olshansky
Sep 02 2015
prev sibling parent reply Daniel Murphy <yebbliesnospam gmail.com> writes:
On 2/09/2015 11:23 PM, Rory McGuire via Digitalmars-d-announce wrote:
 Surely if the dog food is so bad no one should be eating?
It's not that phobos is bad, it's that we're following the same development pattern we had with C++. We're using a conservative subset of D features and libraries, and slowly expanding what's acceptable. For example, DMD now uses foreach and delegates in a few places, and I expect we'll see a lot of use of D strings in the near future.
Sep 04 2015
next sibling parent reply "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Friday, 4 September 2015 at 12:38:41 UTC, Daniel Murphy wrote:
 expanding what's acceptable. For example, DMD now uses foreach 
 and delegates in a few places, and I expect we'll see a lot of 
 use of D strings in the near future.
But you are going to do high level refactoring too, right? Not just local conversions into foreachs and the like?
Sep 05 2015
next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2015-09-05 18:47, Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= 
<ola.fosheim.grostad+dlang gmail.com> wrote:

 But you are going to do high level refactoring too, right? Not just
 local conversions into foreachs and the like?
I'm pretty sure the conversion tool already converted at least some loops to foreach loops. -- /Jacob Carlborg
Sep 05 2015
parent Daniel Murphy <yebbliesnospam gmail.com> writes:
On 6/09/2015 5:11 AM, Jacob Carlborg wrote:
 I'm pretty sure the conversion tool already converted at least some
 loops to foreach loops.
I took that code out some time before the switch because D's stricter implicit conversions were causing problems in some places. Even doing it by hand is error-prone since dmd makes use of the extra freedom you get from raw for loops.
Sep 05 2015
prev sibling parent reply Daniel Murphy <yebbliesnospam gmail.com> writes:
On 6/09/2015 2:47 AM, Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= 
<ola.fosheim.grostad+dlang gmail.com> wrote:
 But you are going to do high level refactoring too, right? Not just
 local conversions into foreachs and the like?
Of course. Some of this was been started before the conversion.
Sep 05 2015
parent "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Sunday, 6 September 2015 at 04:20:36 UTC, Daniel Murphy wrote:
 On 6/09/2015 2:47 AM, Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= 
 <ola.fosheim.grostad+dlang gmail.com> wrote:
 But you are going to do high level refactoring too, right? Not 
 just
 local conversions into foreachs and the like?
Of course. Some of this was been started before the conversion.
This is great Daniel! +1000
Sep 06 2015
prev sibling parent reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Friday, 4 September 2015 at 12:38:41 UTC, Daniel Murphy wrote:
 It's not that phobos is bad, it's that we're following the same 
 development pattern we had with C++.  We're using a 
 conservative subset of D features and libraries, and slowly 
 expanding what's acceptable. For example, DMD now uses foreach 
 and delegates in a few places, and I expect we'll see a lot of 
 use of D strings in the near future.
Is there any place where this is documented? For instance, what D constructs are currently allowed, whether/which phobos imports have started to be accepted, and so on?
Sep 07 2015
parent Daniel Murphy <yebbliesnospam gmail.com> writes:
On 8/09/2015 1:54 AM, "Luís Marques  <luis luismarques.eu> wrote:
 On Friday, 4 September 2015 at 12:38:41 UTC, Daniel Murphy wrote:
 It's not that phobos is bad, it's that we're following the same
 development pattern we had with C++.  We're using a conservative
 subset of D features and libraries, and slowly expanding what's
 acceptable. For example, DMD now uses foreach and delegates in a few
 places, and I expect we'll see a lot of use of D strings in the near
 future.
Is there any place where this is documented? For instance, what D constructs are currently allowed, whether/which phobos imports have started to be accepted, and so on?
No.
Sep 07 2015
prev sibling parent "Jesse Phillips" <Jesse.K.Phillips+D gmail.com> writes:
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:
 https://github.com/D-Programming-Language/dmd/pull/4923

 We have made the switch from C++ DMD to D DMD!

 Many, many thanks to Daniel Murphy for slaving away for 2.5 
 years to make this happen. More thanks to Martin Nowak for 
 helping shepherd it through the final stages, and to several 
 others who have pitched in on this.

 This is a HUGE milestone for us.

 Much work remains to be done, such as rebasing existing dmd 
 pull requests. Thanks in advance for the submitters who'll be 
 doing that. I hope you aren't too unhappy about the extra work 
 - it's in a good cause!
Should we be looking to put out a DMD 2.069 beta to get more hands on testing it early?
Sep 04 2015