Re: Using const to Enforce Design Decisions

2019-03-25 Thread Rubn via Digitalmars-d-announce
On Monday, 25 March 2019 at 13:00:07 UTC, Mike Parker wrote: Marco de Wild has penned a tutorial on D's const for the D blog. He gives an overview of the feature, how it differs from C++, and shows how he employed it in his mahjong game. The blog:

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-31 Thread Rubn via Digitalmars-d-announce
On Thursday, 31 January 2019 at 22:00:10 UTC, Walter Bright wrote: On 1/31/2019 1:46 PM, Andrei Alexandrescu wrote: The proposal could actually disallow rvalues that have lvalue syntax, such as "symbol", "symbol[expr]", "symbol.symbol", "symbol.symbol[expr]", etc. Ugh. Gets hairy quickly.

Re: DIP 1016 should use expression lowering, not statement lowering

2019-01-29 Thread Rubn via Digitalmars-d-announce
On Tuesday, 29 January 2019 at 15:44:02 UTC, Nicholas Wilson wrote: On Tuesday, 29 January 2019 at 11:52:40 UTC, Andrei Alexandrescu wrote: While writing this example: int[] a = cast(int[]) alloc.allocate(100 * int.sizeof); if (alloc.reallocate(a, 200 * int.sizeof)) { assert(a.length ==

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-26 Thread Rubn via Digitalmars-d-announce
On Saturday, 26 January 2019 at 06:15:22 UTC, Walter Bright wrote: On 1/25/2019 7:44 PM, Manu wrote: I never said anything about 'rvalue references', The DIP mentions them several times in the "forum threads" section. I see you want to distinguish the DIP from that; I recommend a section

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-25 Thread Rubn via Digitalmars-d-announce
On Friday, 25 January 2019 at 11:56:58 UTC, Walter Bright wrote: On 1/24/2019 11:53 PM, Nicholas Wilson wrote: That the conflation of pass by reference to avoid copying and mutation is not only deliberate but also mitigated by @disable. The first oddity about @disable is it is attached to the

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-24 Thread Rubn via Digitalmars-d-announce
On Thursday, 24 January 2019 at 23:18:11 UTC, kinke wrote: Proposed `out` semantics: --- void increment(out long value) { ++value; } increment(out value); --- vs. pointer version with current `out` semantics: --- void increment(long* pValue) { ++(*pValue); } increment(); --- The pointer

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-24 Thread Rubn via Digitalmars-d-announce
On Thursday, 24 January 2019 at 20:01:45 UTC, kinke wrote: On Thursday, 24 January 2019 at 09:49:14 UTC, Manu wrote: We discussed and concluded that one mechanism to mitigate this issue was already readily available, and it's just that 'out' gains a much greater sense of identity (which is

Re: DIP 1016--ref T accepts r-values--Formal Assessment

2019-01-24 Thread Rubn via Digitalmars-d-announce
On Thursday, 24 January 2019 at 09:24:19 UTC, Nicholas Wilson wrote: On Thursday, 24 January 2019 at 07:18:58 UTC, Mike Parker wrote: Walter and Andrei have declined to accept DIP 1016, "ref T accepts r-values", on the grounds that it has two fundamental flaws that would open holes in the

Re: DConf 2019: Shepherd's Pie Edition

2018-12-23 Thread Rubn via Digitalmars-d-announce
On Sunday, 23 December 2018 at 10:07:40 UTC, Walter Bright wrote: BTW, another point for the presentations is that we cover the air fare and hotel expenses for the presenters. Quite a lot of people have been able to attend because of this. It's our way of giving a little bit back to strong

Re: Blog post: What D got wrong

2018-12-19 Thread Rubn via Digitalmars-d-announce
On Wednesday, 19 December 2018 at 19:58:53 UTC, Neia Neutuladh wrote: On Wed, 19 Dec 2018 17:28:01 +, Vijay Nayar wrote: Could you please elaborate a little bit more on this? In the linked program, I had expected that "ref" would return a reference to "a" that would behave similar to a

Re: DIP 1015--Deprecation of Implicit Conversion of Int. & Char. Literals to bool--Formal Assement

2018-11-14 Thread Rubn via Digitalmars-d-announce
On Wednesday, 14 November 2018 at 02:45:38 UTC, Walter Bright wrote: On 11/13/2018 3:29 PM, Rubn wrote: > enum A : int { a = 127 } `a` is a manifest constant of type `A` with a value of `127`. Remember that `A` is not an `int`. It is implicitly convertible to an integer type that its value

Re: DIP 1015--Deprecation of Implicit Conversion of Int. & Char. Literals to bool--Formal Assement

2018-11-13 Thread Rubn via Digitalmars-d-announce
On Monday, 12 November 2018 at 22:07:39 UTC, Walter Bright wrote: One could have be treated as "better than" , and it sounds like a good idea, but even C++, not known for simplicity, tried that and had to abandon it as nobody could figure it out once the code examples got beyond trivial

Re: DIP 1015--Deprecation of Implicit Conversion of Int. & Char. Literals to bool--Formal Assement

2018-11-13 Thread Rubn via Digitalmars-d-announce
On Monday, 12 November 2018 at 22:07:39 UTC, Walter Bright wrote: On 11/12/2018 12:34 PM, Neia Neutuladh wrote: Tell me more about this "consistency". int f(short s) { return 1; } int f(int i) { return 2; } enum : int { a = 0 } enum A : int { a = 0 } pragma (msg, f(a)); // calls f(int)

Re: Funding for code-d/serve-d

2018-05-05 Thread Rubn via Digitalmars-d-announce
On Saturday, 5 May 2018 at 11:21:29 UTC, Mike Parker wrote: This morning at the Hackathon I announced that the D Foundation is raising money for code-d/serve-d, the plugin for Visual Studio Code and its companion Microsoft Language Server Protocol implementation for D. We've set up a goal of

Re: User Stories: Funkwerk

2018-03-16 Thread Rubn via Digitalmars-d-announce
On Wednesday, 14 March 2018 at 14:17:50 UTC, Mike Parker wrote: foreach(auto element: elements) ":" is C++ syntax

Re: Beta 2.079.0

2018-02-22 Thread Rubn via Digitalmars-d-announce
On Friday, 23 February 2018 at 00:05:59 UTC, Martin Nowak wrote: - each imported module should be on it's own line That's your opinion, my opinion is that importing 6 symbols from 6 different modules for a tiny cli tool sucks and bloats code example. So the alternative is to not use