Re: DConf 2017 Hackathon report [OT]
On 12 May 2017 at 14:45, David Nadlinger via Digitalmars-dwrote: > On Thursday, 11 May 2017 at 21:37:45 UTC, Iain Buclaw wrote: >> >> This is not a problem that needs to be solved for GDC. > > > It's not a problem that needs to be solved *in* GDC, but it has to be > tackled *for* (packaging) GDC, as you need to have a bootstrap compiler > available. Hence, building a C++-based compiler is less complex than a > D-based compiler – that is, if you don't want to depend on a pre-existing D > compiler, but are fine with using a pre-existing C++ compiler, which is what > the LDC snap packages currently does. > I've spoken to the author. I'm of the opinion that this is a design choice, not something that should be considered an inherent complexity. Iain.
Re: DConf 2017 Hackathon report [OT]
On Thursday, 11 May 2017 at 21:37:45 UTC, Iain Buclaw wrote: This is not a problem that needs to be solved for GDC. It's not a problem that needs to be solved *in* GDC, but it has to be tackled *for* (packaging) GDC, as you need to have a bootstrap compiler available. Hence, building a C++-based compiler is less complex than a D-based compiler – that is, if you don't want to depend on a pre-existing D compiler, but are fine with using a pre-existing C++ compiler, which is what the LDC snap packages currently does. — David
Re: DConf 2017 Hackathon report
On 2017-05-12 13:57, rikki cattermole wrote: I've never used the variable support in dub, its fairly recent. Yeah two dashes, my bad. idgen I don't think right now is setup for the argument, but its either that or find another solution cross platform to change directories. I think I have it working now. $PACKAGE_DIR seems to work and do what I want it to do. Thanks for the help. -- /Jacob Carlborg
Re: DConf 2017 Hackathon report
On Friday, 12 May 2017 at 11:45:45 UTC, Jacob Carlborg wrote: On 2017-05-12 13:29, rikki cattermole wrote: May as well, it is a separate artifact from the build process. I get: Invalid variable: dmd_PACKAGE_DIR And I'm not sure about the syntax. Is that supposed to be two dashes? And I should add an argument to idgen? Yes. No, idgen just runs in the cwd any writes to files in the cwd. If you're having it as a sub package you may want to change idgen to specify a path.
Re: DConf 2017 Hackathon report
On 12/05/2017 12:45 PM, Jacob Carlborg wrote: On 2017-05-12 13:29, rikki cattermole wrote: May as well, it is a separate artifact from the build process. I get: Invalid variable: dmd_PACKAGE_DIR And I'm not sure about the syntax. Is that supposed to be two dashes? And I should add an argument to idgen? I've never used the variable support in dub, its fairly recent. Yeah two dashes, my bad. idgen I don't think right now is setup for the argument, but its either that or find another solution cross platform to change directories.
Re: DConf 2017 Hackathon report
On 2017-05-12 13:29, rikki cattermole wrote: May as well, it is a separate artifact from the build process. I get: Invalid variable: dmd_PACKAGE_DIR And I'm not sure about the syntax. Is that supposed to be two dashes? And I should add an argument to idgen? -- /Jacob Carlborg
Re: DConf 2017 Hackathon report
On 12/05/2017 12:27 PM, Jacob Carlborg wrote: On 2017-05-12 10:59, rikki cattermole wrote: Another way: preBuildCommands: dub run ddmd:idgen - $ddmd_PACKAGE_DIR With idgen taking in the location to the root. Most importantly it is not platform specific ;) Hmm, so idgen should be a subpackage? May as well, it is a separate artifact from the build process.
Re: DConf 2017 Hackathon report
On 2017-05-12 10:59, rikki cattermole wrote: Another way: preBuildCommands: dub run ddmd:idgen - $ddmd_PACKAGE_DIR With idgen taking in the location to the root. Most importantly it is not platform specific ;) Hmm, so idgen should be a subpackage? -- /Jacob Carlborg
Re: DConf 2017 Hackathon report
On 12/05/2017 9:51 AM, Jacob Carlborg wrote: On 2017-05-09 06:35, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali A bit late to the party but I created a Dub file for DMD to be able to use the lexer and parser as a library [1]. Although I did run into some problems with Dub [2], which I'm not sure how to solve. [1] https://github.com/dlang/dmd/pull/6771 [2] http://forum.rejectedsoftware.com/groups/rejectedsoftware.dub/thread/15871/ Another way: preBuildCommands: dub run ddmd:idgen - $ddmd_PACKAGE_DIR With idgen taking in the location to the root. Most importantly it is not platform specific ;)
Re: DConf 2017 Hackathon report
On 2017-05-09 06:35, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali A bit late to the party but I created a Dub file for DMD to be able to use the lexer and parser as a library [1]. Although I did run into some problems with Dub [2], which I'm not sure how to solve. [1] https://github.com/dlang/dmd/pull/6771 [2] http://forum.rejectedsoftware.com/groups/rejectedsoftware.dub/thread/15871/ -- /Jacob Carlborg
Re: DConf 2017 Hackathon report [OT]
On 11 May 2017 at 23:19, David Nadlinger via Digitalmars-dwrote: > On Thursday, 11 May 2017 at 21:14:16 UTC, Iain Buclaw wrote: >> >> Oh, do you have to do the multi-stage build yourself? I don't. > > > So you intend to keep a copy of the (old) bootstrap compiler sources in-tree > for all future D-based GDC versions (if/when you start requiring D)? We > could do that just as well, but it seems a bit pointless. — David I do not intend to. Which is why switching to D-based GDC will be a no-op. It is at this point that you've lost me, there is no added complexity building a self-hosted compiler within GCC's build system. C++ is self-hosted, Ada is self-hosted, an acquaintance of mine even wrote a self-hosted ALGOL60 frontend to GCC. This is not a problem that needs to be solved for GDC. Iain.
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: - Contributed to the logo and branding discussions Me too. And: - Discussed ways to move forward with Laeeth and Andrei, and Daniel and Stefan. - Discussed an issue in std.experimental.logger with Robert. - Worked on translation of Extended Pascal snippets to D. It took rather long retrieving them from my workstation at home, but after that I got valuable help from 3-4 seniors in my direct vicinity, finding ways to emulate EP constructs. Nice! Bastiaan.
Re: DConf 2017 Hackathon report [OT]
On Thursday, 11 May 2017 at 21:14:16 UTC, Iain Buclaw wrote: Oh, do you have to do the multi-stage build yourself? I don't. So you intend to keep a copy of the (old) bootstrap compiler sources in-tree for all future D-based GDC versions (if/when you start requiring D)? We could do that just as well, but it seems a bit pointless. — David
Re: DConf 2017 Hackathon report [OT]
On 11 May 2017 at 23:06, David Nadlinger via Digitalmars-dwrote: > On Thursday, 11 May 2017 at 20:54:45 UTC, Iain Buclaw wrote: >> >> My rebuttal still stands. Switching build from C++ to D should be a one >> line change, if it isn't then you have a problems with your build process. > > > How does snap requiring more than a one-line change for a multi-stage build > imply that anybody's build process is problematic? — David Oh, do you have to do the multi-stage build yourself? I don't. :-) Iain.
Re: DConf 2017 Hackathon report [OT]
On Thursday, 11 May 2017 at 20:54:45 UTC, Iain Buclaw wrote: My rebuttal still stands. Switching build from C++ to D should be a one line change, if it isn't then you have a problems with your build process. How does snap requiring more than a one-line change for a multi-stage build imply that anybody's build process is problematic? — David
Re: DConf 2017 Hackathon report
On 11 May 2017 at 22:24, David Nadlinger via Digitalmars-dwrote: > On Thursday, 11 May 2017 at 17:56:00 UTC, Iain Buclaw wrote: >> >> I can only infer that you are saying that using a D project means it's >> more difficult to get working with snap. To which I will insert an >> obligatory "Woah!", and "I expect you to know better" rebuttal. >> >> ... >> >> Woah, I expect you to know better. > > > Incorrect. My (implied) statement was that a dependency on D makes the build > process more complex *if that project is a D compiler, and you don't want to > depend on another one in build-packages*. > > — David My rebuttal still stands. Switching build from C++ to D should be a one line change, if it isn't then you have a problems with your build process.
Re: DConf 2017 Hackathon report
On Thursday, 11 May 2017 at 17:56:00 UTC, Iain Buclaw wrote: I can only infer that you are saying that using a D project means it's more difficult to get working with snap. To which I will insert an obligatory "Woah!", and "I expect you to know better" rebuttal. ... Woah, I expect you to know better. Incorrect. My (implied) statement was that a dependency on D makes the build process more complex *if that project is a D compiler, and you don't want to depend on another one in build-packages*. — David
Re: DConf 2017 Hackathon report
On 9 May 2017 at 06:35, Ali Çehreli via Digitalmars-dwrote: > Please list what we've achieved during the hackathon, including what is > started but is likely to be finished in the coming days or months. > I was frankly a zombie all Sunday, apart from helping Joe setting up the best snap package in the world, I spent the morning rebuilding my toolchain for GCC/GDC-8. After spending some time away from my laptop, then came back to discover it had died on battery. At least I managed to remove D compiler support for SH-5. That was a notable productive task. :-)
Re: DConf 2017 Hackathon report
On 10 May 2017 at 22:04, David Nadlinger via Digitalmars-dwrote: > On Wednesday, 10 May 2017 at 19:46:01 UTC, Joseph Rushton Wakeling wrote: >> >> Ironically, given that I'd always been worried this would be the most >> finnicky compiler snap to create, it's actually the simplest package >> definition out of all the Big 3 ;-) > > > Without even having seen your snap file, I can confidently say that this is > just due to the idiosyncrasies of the snap environment, though. > > Oh wait, no, GDC is still stuck on an ancient C++-based frontend. Not too > surprising, then. ;P > > — David I can only infer that you are saying that using a D project means it's more difficult to get working with snap. To which I will insert an obligatory "Woah!", and "I expect you to know better" rebuttal. ... Woah, I expect you to know better. Iain.
Re: DConf 2017 Hackathon report
On Wednesday, 10 May 2017 at 19:46:01 UTC, Joseph Rushton Wakeling wrote: Ironically, given that I'd always been worried this would be the most finnicky compiler snap to create, it's actually the simplest package definition out of all the Big 3 ;-) Without even having seen your snap file, I can confidently say that this is just due to the idiosyncrasies of the snap environment, though. Oh wait, no, GDC is still stuck on an ancient C++-based frontend. Not too surprising, then. ;P — David
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. Created a working snap package definition for GDC. I'm coordinating with Iain on how to get this into the snap store most effectively (having spent a fair bit of the hackathon pestering him with questions about the GDC build procedure:-). Ironically, given that I'd always been worried this would be the most finnicky compiler snap to create, it's actually the simplest package definition out of all the Big 3 ;-) I also had a play with using the new `scope return` etc. functionality to prototype a safe design for random algorithms that wrap a pointer to an RNG. That's probably going to take a while longer to put together, as I've run into some issues that I really need to reduce to a very simple test case.
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 13:19:12 UTC, Steven Schveighoffer wrote: But it was very awesome to be able to go around and find the people to discuss a PR/idea without going through a forum thread. I think there's a psychological barrier that happens when you post a complete argument, and then your counterpart forms an interpretation in their mind of what the argument means, forms their complete counter argument, and neither side really understands what the other is saying or willing to do. Doing it in person allows so much more interaction -- you can cut off early any misinterpretations. It's also harder to be nasty in person :) +1! For the same reasons, it's also a lot easier for people who don't use English as their 1st language to express their ideas as one doesn't need to spend time carefully looking up the meaning of words to make sure the "complete argument" will be understood as intended. :)
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali I: 1. Started a PR adding -Xcc switch to LDC [1]. 2. Discussed a solution to [2] and [3] with Sönke, implementation is in progress. 3. Briefly went through sources of Stefan's CTFE implementation. To me it was also a good quick lesson about part of DMD internals I didn't know yet, and I hope I'll be able to review his code from time to time and motivate him. 4. Got a ton of inspiration and motivation. [1] https://github.com/ldc-developers/ldc/pull/2104 [2] https://github.com/dlang/dub/issues/628 [3] https://github.com/dlang/dub/issues/228
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 17:50:06 UTC, ANtlord wrote: On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali Is there some news about compiling dmd as library? There was a talk about this, one of the interns is working on it: http://dconf.org/2017/talks/nitu.html No idea when it'll be done.
Re: DConf 2017 Hackathon report
On Wednesday, 10 May 2017 at 11:02:50 UTC, Stefan Koch wrote: On Wednesday, 10 May 2017 at 10:55:09 UTC, Atila Neves wrote: I felt like a wizard afterwards for modifying the compiler, which is a nice bonus. Nice, I usually feel confused after modifying the compiler. Now if only I could get the autotester to be green... Just think about how much more wizardly you will feel after it is green. It turns out I'd stupidly pushed branched off of my other branch instead of master. It's green. :) Atila, official wizard
Re: DConf 2017 Hackathon report
On Wednesday, 10 May 2017 at 10:55:09 UTC, Atila Neves wrote: I felt like a wizard afterwards for modifying the compiler, which is a nice bonus. Nice, I usually feel confused after modifying the compiler. Now if only I could get the autotester to be green... Just think about how much more wizardly you will feel after it is green.
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali I submitted a PR for Phobos and 2 for dmd, the latter of which were my first. I felt like a wizard afterwards for modifying the compiler, which is a nice bonus. Now if only I could get the autotester to be green... Atila
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali Is there some news about compiling dmd as library?
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 16:14:57 UTC, Nemanja Boric wrote: On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali I've fixed the FreeBSD-Current exception handling issue, so that exception handling is now working there as well (I also suspect that it was broken pretty much on all libundwind 64bit systems, just worked by accident, since the optimizer didn't try too hard. It's something I wanted to do for a long time, but there's never time, so having a day dedicated to it was pretty helpful! https://issues.dlang.org/show_bug.cgi?id=16856 It was pretty cool finding Jonathan who filed the bug in the same room, then chasing Walter to talk about it, after hearing all war stories, including, but not limited to, blue meteors. Oh, also working with Martin and chasing him around the rooms to get my druntime PR for fiber stack overflow protection (https://github.com/dlang/druntime/pull/1698) merged after months and months is also worth mentioning, although it didn't happen during the hackaton :-)
Re: DConf 2017 Hackathon report
On Tuesday, 9 May 2017 at 04:35:40 UTC, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) - Contributed to the logo and branding discussions - Opened two bugs - Ate German cookies :) Ali I've fixed the FreeBSD-Current exception handling issue, so that exception handling is now working there as well (I also suspect that it was broken pretty much on all libundwind 64bit systems, just worked by accident, since the optimizer didn't try too hard. It's something I wanted to do for a long time, but there's never time, so having a day dedicated to it was pretty helpful! https://issues.dlang.org/show_bug.cgi?id=16856 It was pretty cool finding Jonathan who filed the bug in the same room, then chasing Walter to talk about it, after hearing all war stories, including, but not limited to, blue meteors.
Re: DConf 2017 Hackathon report
On 5/9/17 9:19 AM, Steven Schveighoffer wrote: Aaaand, I'm not questioning whether the PR I made is sound, due to the way template-instantiated static ctors work. I'll have to rethink how it works. *now* questioning... -Steve
Re: DConf 2017 Hackathon report
On 5/9/17 12:35 AM, Ali Çehreli wrote: Please list what we've achieved during the hackathon, including what is started but is likely to be finished in the coming days or months. For me: - Finished updating "Programming in D" to 2.074.0 (the HTML is now up to date but I could not get to the still manual work of preparing the ebooks) Nice! For me: - Don't want to exactly steal Jonathan's thunder, but during the conference (before the hackathon actually) he split (and I helped get approval for splitting) std.datetime into a package. That still needs some severe TLC on making the docs read better, but it should be viable. And now github can show diffs for the smaller files :) - Merged a simple PR I had from April. - Provided a bit of guidance to people on druntime internals. - Created my first DMD PR (to make it so unittest imports are not counted for cycle detection). And that's about it. That last one took a lot of effort, as I was dealing with an apparent bug in the BitArray type, thought I was losing my mind :) Aaaand, I'm not questioning whether the PR I made is sound, due to the way template-instantiated static ctors work. I'll have to rethink how it works. But it was very awesome to be able to go around and find the people to discuss a PR/idea without going through a forum thread. I think there's a psychological barrier that happens when you post a complete argument, and then your counterpart forms an interpretation in their mind of what the argument means, forms their complete counter argument, and neither side really understands what the other is saying or willing to do. Doing it in person allows so much more interaction -- you can cut off early any misinterpretations. It's also harder to be nasty in person :) -Steve