Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wednesday, 3 February 2021 at 19:00:20 UTC, Dennis wrote: On Wednesday, 3 February 2021 at 18:24:06 UTC, Imperatorn wrote: Is there a short explanation of why this was done and what it enables? It is done to give better semantics to certain things that currently have special cases in the compiler. E.g. the compiler has an internal list of functions that don't return, and `typeof(null)` is a bit of a special case. This enables: - Writing your own 'panic' function that the compiler knows terminates control flow (similar to assert(0)) so you don't have to write an unreachable `return` or `break`. - Throwing exceptions in lambda's: `() => throw new Exception("")` - Accepting `null` in a template taking a generic pointer `T*` - Recognizing the empty list `[]` in template functions (currently it is a `void[]`) Thanks for the clarification(s)!
Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wednesday, 3 February 2021 at 18:24:06 UTC, Imperatorn wrote: Is there a short explanation of why this was done and what it enables? Personally I'm excited to see this... Strangely enough there is a long running 'net wide disagreement on what an assert is or does. Some regard it as purely a debugging tool used as a programmer aid that is expressly turned on by the programmer, and others (such as myself) regard it as a way of stating, and enforcing the contract, provided by an API. And as such, people with the latter mindset wish the compiler would warn us if that contract is potentially violated on any path, and conversely, wish the optimizer to act on the information it provides. By adding it to the type system, it expresses and clarifies the intent of the author of the code, and expresses it in the compilers terms, ie. a type. In my day job, I have found the only resolution to the disagreement is to create two different facilities with two different names to permit the two groups of humans to get along. In my day job instead of "assert" we now have "log_If()" that are opt-in programmer debugging tools and "error_Check...()" that enforce.
Re: SAOC 2020 Ends
On Wednesday, 3 February 2021 at 14:21:30 UTC, Mike Parker wrote: The final Milestone for SAOC 2020 Ended on January 15. The two remaining students, Robert Aron and Adela Vais, had until the end of the month to submit their final reports. They did so, and the reports are now in the hands of the SAOC Committee, which this year consists of Atila Neves, John Colvin, and Robert Schadek. [...] Nice to hear that all three projects were successfull.
Re: QtE5 for Qt 6
On Thursday, 21 January 2021 at 18:34:03 UTC, MGW wrote: I want to meet Qt 6 by creating QtE6. This forced me to update github/QtE5 to the latest stable version: widgetsXX.dll/so + qte5.d (qt 5.12.7). Programming is easy, compilation does not require Qt metacompiler (it uses a set of ready-made slots), works on Linux and Windows. Of course this is not full Qt, but a small part that I use every day in my projects. https://github.com/MGWL/QtE5 Please create duic to convert .ui to .d (For convert .ui files created by Qt Design) to dlang file .d
Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wed, Feb 03, 2021 at 09:20:57AM +, Mike Parker via Digitalmars-d-announce wrote: > After a bit of delay, DIP 1034, "Add a Bottom Type (reboot)", is now in the > hands of Walter and Atila for the Formal Assessment. We can expect to have a > final decision or some other result by March 4. > > You can find the final draft of DIP 1034 here: > > https://github.com/dlang/DIPs/blob/1eb2f39bd5b6652a14ef5300062a1234ad00ceb1/DIPs/DIP1034.md Too late now, but there's a typo in the last code example under section "Flow analysis across functions": the return line should read: return x != 0 ? 1024 / x : abort("calculation went awry."); rather than: return x != 0 ? 1024 / x : abort(0, "calculation went awry."); (extraneous '0' first argument.) T -- There are four kinds of lies: lies, damn lies, and statistics.
Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wednesday, 3 February 2021 at 18:24:06 UTC, Imperatorn wrote: Is there a short explanation of why this was done and what it enables? It is done to give better semantics to certain things that currently have special cases in the compiler. E.g. the compiler has an internal list of functions that don't return, and `typeof(null)` is a bit of a special case. This enables: - Writing your own 'panic' function that the compiler knows terminates control flow (similar to assert(0)) so you don't have to write an unreachable `return` or `break`. - Throwing exceptions in lambda's: `() => throw new Exception("")` - Accepting `null` in a template taking a generic pointer `T*` - Recognizing the empty list `[]` in template functions (currently it is a `void[]`)
Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wednesday, 3 February 2021 at 09:20:57 UTC, Mike Parker wrote: After a bit of delay, DIP 1034, "Add a Bottom Type (reboot)", is now in the hands of Walter and Atila for the Formal Assessment. We can expect to have a final decision or some other result by March 4. You can find the final draft of DIP 1034 here: https://github.com/dlang/DIPs/blob/1eb2f39bd5b6652a14ef5300062a1234ad00ceb1/DIPs/DIP1034.md Is there a short explanation of why this was done and what it enables? Thanks!
Re: My Client/Server Internet created with Dlang
On Tuesday, 2 February 2021 at 17:03:58 UTC, Energo Koder wrote: Please answer me for these questions: 2. Do you introduce you app with: import core.stdc.stdlib; This drive me to question: Is the C API the the only way do access Internet? The code uses std.socket for networking. This is part of Phobos and is heavily inspired by the BSD socket interface, but tweaks it into something more D-ish.
SAOC 2020 Ends
The final Milestone for SAOC 2020 Ended on January 15. The two remaining students, Robert Aron and Adela Vais, had until the end of the month to submit their final reports. They did so, and the reports are now in the hands of the SAOC Committee, which this year consists of Atila Neves, John Colvin, and Robert Schadek. These three have the difficult task of deciding who should receive the final $1000 milestone payment and the free registration, travel, and lodging at the next real-world DConf. Both of the students impressed their mentors with their performance throughout the event and should be proud of what they achieved no matter the outcome. A big thanks to Razvan Nitu and Eduard Staniloiu for mentoring all of the SAOC students this year. We also want to thank all of the students who participated in SAOC 2020 and we look forward to seeing what their futures hold as members of the D community.
Re: DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
On Wednesday, 3 February 2021 at 09:20:57 UTC, Mike Parker wrote: After a bit of delay, DIP 1034, "Add a Bottom Type (reboot)", is now in the hands of Walter and Atila for the Formal Assessment. Good luck Dennis!
DIP 1038--@nodiscard--Final Review Begins
The Final Review for DIP 1038, "@nodiscard", has begun. The Final Review is the last check to make sure everything is in good shape. Generally, we aren't looking for major revisions to the DIP unless someone notices something critical. This is a chance for any revisions made in the previous review round to be scrutinized. Even when no revisions were made, it's a final opportunity to catch any problems that may have been missed before. Please discuss the features of the proposal (its merits, its implementation, peripheral topics, etc.) in the Discussion Thread and save all review feedback (critiques on the content of the DIP: what to change, how to improve it, etc.) for the Feedback Thread. Discussion Thread: https://forum.dlang.org/post/nfyfsmenjwzhbezff...@forum.dlang.org Feedback Thread: https://forum.dlang.org/post/ipfmxoimroobpzymr...@forum.dlang.org
Re: [GSoC] Google Summer of Code 2021: Organization Applications Open
On Sunday, 31 January 2021 at 00:45:18 UTC, Ahmet Sait wrote: Hi everyone! It's that time of the year again. Google announced that mentoring organizations can now apply for summer of code in their blog: https://opensource.googleblog.com/2021/01/google-summer-of-code-2021-is-open-for-applications.html And in the mailing list: https://groups.google.com/g/google-summer-of-code-discuss/c/KB8efMmLfhA [...] Hi! Thanks for the heads up, we are already working on this. I will come back with details about this. Cheers, RazvanN
DIP 1034--Add a Bottom Type (reboot)--Formal Assessment Begins
After a bit of delay, DIP 1034, "Add a Bottom Type (reboot)", is now in the hands of Walter and Atila for the Formal Assessment. We can expect to have a final decision or some other result by March 4. You can find the final draft of DIP 1034 here: https://github.com/dlang/DIPs/blob/1eb2f39bd5b6652a14ef5300062a1234ad00ceb1/DIPs/DIP1034.md