Re: DIP 1012--Attributes--Preliminary Review Round 1

2018-05-27 Thread sarn via Digitalmars-d
On Sunday, 27 May 2018 at 13:44:40 UTC, Mike Franklin wrote: I don't know what's happening with this DIP, but I've recently encountered a real-world problem for which there is no palatable workaround that this DIP would likely solve: https://github.com/dlang/druntime/pull/2184#pullrequestrevie

Re: DIP 1012--Attributes--Preliminary Review Round 1

2018-05-27 Thread Mike Franklin via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August 10

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-31 Thread Nicholas Wilson via Digitalmars-d
On Monday, 31 July 2017 at 19:27:46 UTC, Jesse Phillips wrote: On Friday, 28 July 2017 at 23:25:35 UTC, Nicholas Wilson wrote: On Friday, 28 July 2017 at 21:47:32 UTC, Jesse Phillips wrote: * Remove the whole program defaults, I'm ok with it being changed in a re-implementation of the runtime (

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-31 Thread Jesse Phillips via Digitalmars-d
On Friday, 28 July 2017 at 23:25:35 UTC, Nicholas Wilson wrote: On Friday, 28 July 2017 at 21:47:32 UTC, Jesse Phillips wrote: * Remove the whole program defaults, I'm ok with it being changed in a re-implementation of the runtime (like the embedded example), we just don't need the extra confus

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 21:47:32 UTC, Jesse Phillips wrote: On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md Thanks in advance to all who participate. Destroy! My primary points * Don'

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Jesse Phillips via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md Thanks in advance to all who participate. Destroy! My primary points * Don't formally deprecate the keywords, there is not enough justific

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 11:45:21 UTC, Nick Treleaven wrote: On Friday, 28 July 2017 at 01:50:24 UTC, Jonathan M Davis wrote: Should public have @ on it? Should static have @ on it? What about scope, const, or shared? If they are storage classes, they shouldn't have @. If they are statement

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Nick Treleaven via Digitalmars-d
On Friday, 28 July 2017 at 01:50:24 UTC, Jonathan M Davis wrote: Should public have @ on it? Should static have @ on it? What about scope, const, or shared? If they are storage classes, they shouldn't have @. If they are statement or expression keywords, they shouldn't have @. Things like tha

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Olivier FAURE via Digitalmars-d
On Friday, 28 July 2017 at 01:30:28 UTC, sarn wrote: To be totally honest, as it stands it feels like architecture astronautics: https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you/ Yeah, I think you nailed it. This DIP does seem to come from a 'what is the sm

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread vit via Digitalmars-d
On Friday, 28 July 2017 at 07:50:43 UTC, Daniel N wrote: On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this threa

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-28 Thread Daniel N via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August 10

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 06:31:08 UTC, Johannes Pfau wrote: Am Thu, 27 Jul 2017 23:38:33 + schrieb Nicholas Wilson : It is actually a very simple change, from the end user perspective. * Function attributes that were keyword like, become regular attributes. * They can be applied to module

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Johannes Pfau via Digitalmars-d
Am Thu, 27 Jul 2017 23:38:33 + schrieb Nicholas Wilson : > On Thursday, 27 July 2017 at 15:48:04 UTC, Olivier FAURE wrote: > > On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: > >> DIP 1012 is titled "Attributes". > >> > >> https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 01:50:24 UTC, Jonathan M Davis wrote: On Friday, July 28, 2017 01:13:10 Nicholas Wilson via Digitalmars-d wrote: IIRC the reason they lack a leading @ is purely historical and considered not good but not worth breaking code over. I believe this DIP presents an opportu

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Jonathan M Davis via Digitalmars-d
On Friday, July 28, 2017 01:13:10 Nicholas Wilson via Digitalmars-d wrote: > IIRC the reason they lack a leading @ is purely historical and > considered not good but not worth breaking code over. I believe > this DIP presents an opportunity and reason to make that change. > Existing code will still

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Mike via Digitalmars-d
On Friday, 28 July 2017 at 01:26:19 UTC, Mike wrote: On Friday, 28 July 2017 at 01:13:10 UTC, Nicholas Wilson wrote: Terminology: I was confused by the term "attribute group". Although the term is defined in the DIP, it implies a combination of attributes rather than a mutually exclusive attr

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 01:26:19 UTC, Mike wrote: On Friday, 28 July 2017 at 01:13:10 UTC, Nicholas Wilson wrote: Terminology: I was confused by the term "attribute group". Although the term is defined in the DIP, it implies a combination of attributes rather than a mutually exclusive attr

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread sarn via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md Like others in this thread have said, it needs more rationale. The rationale only mentions one actual problem: attributes can't be undone

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Mike via Digitalmars-d
On Friday, 28 July 2017 at 01:13:10 UTC, Nicholas Wilson wrote: Terminology: I was confused by the term "attribute group". Although the term is defined in the DIP, it implies a combination of attributes rather than a mutually exclusive attribute category. Still having trouble understanding t

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 00:32:33 UTC, Mike wrote: On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md Terminology: I was confused by the term "attribute group". Although the term is define

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Mike via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md Terminology: I was confused by the term "attribute group". Although the term is defined in the DIP, it implies a combination of attributes

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Friday, 28 July 2017 at 00:20:25 UTC, jmh530 wrote: On Thursday, 27 July 2017 at 23:27:53 UTC, Nicholas Wilson wrote: Might be useful to mention why not included. This DIP focuses on function (i.e. @-like attributes), the rest of those attributes are storage classes/visibility classes o

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread jmh530 via Digitalmars-d
On Thursday, 27 July 2017 at 23:27:53 UTC, Nicholas Wilson wrote: Might be useful to mention why not included. This DIP focuses on function (i.e. @-like attributes), the rest of those attributes are storage classes/visibility classes or parametric in a way that doesn't fit with this DIP (ex

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 18:06:41 UTC, jmh530 wrote: I think those are only for overwriting @nogc module, but the DIP should be more clear on this matter. I would assume you can import core.attribute to simplify that. core.attribute will be implicitly imported. That is the FQN. As a regul

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 16:56:14 UTC, ketmar wrote: Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 17:35:34 UTC, Adrian Matoga wrote: I don't want to see monsters like "@core.attribute.GarbageCollectedness.inferred" as part of any declaration, ever. I agree that the problem is valid, but I don't think adding the complexity and verboseness presented in the DIP can

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 15:48:04 UTC, Olivier FAURE wrote: On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md This DIP proposes a very complex change (treating attributes as Enums), but

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 15:40:01 UTC, jmh530 wrote: On Thursday, 27 July 2017 at 14:58:22 UTC, Atila Neves wrote: _Why_ it works like that I have no idea. I thought that the attributes were just using the same behavior as public/private/etc. Anyway, isn't that the same type of behav

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 27 July 2017 at 14:58:22 UTC, Atila Neves wrote: "at the top of a file means that one can never "undo" those attributes" That's not true for `@safe`. This is perfectly legal: @safe: void foo() { ... }// foo is @safe void bar() @system { } // bar is @system _Why_ it works l

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Iakh via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: Destroy! Extend rationale: could be application to templates and using with CTFE. "inferred" is not consistent. As I understand inferred applies to templates only. And default value is so called inferred_or_system. So it is infe

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread rjframe via Digitalmars-d
On Thu, 27 Jul 2017 14:44:23 +, Mike Parker wrote: > DIP 1012 is titled "Attributes". > > https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md 1. I would like to see consistency; I'd rather see @nogc and @gc than @nogc and @core.attributes.[whatever].gc, so all these attributes should

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread jmh530 via Digitalmars-d
On Thursday, 27 July 2017 at 17:35:34 UTC, Adrian Matoga wrote: I don't want to see monsters like "@core.attribute.GarbageCollectedness.inferred" as part of any declaration, ever. I agree that the problem is valid, but I don't think adding the complexity and verboseness presented in the DIP c

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Adrian Matoga via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August 10

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread ketmar via Digitalmars-d
Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August 10 (3:59 AM GMT August 11), or when I make a

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Olivier FAURE via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md This DIP proposes a very complex change (treating attributes as Enums), but doesn't really provide a rationale for these changes. The DIP'

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread jmh530 via Digitalmars-d
On Thursday, 27 July 2017 at 14:58:22 UTC, Atila Neves wrote: _Why_ it works like that I have no idea. I thought that the attributes were just using the same behavior as public/private/etc. Anyway, isn't that the same type of behavior this DIP is suggesting? There is an @nogc module foo;

Re: DIP 1012--Attributes--Preliminary Review Round 1

2017-07-27 Thread Atila Neves via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August 10