Re: Remus

2012-11-07 Thread Aziz K.
On Mon, 05 Nov 2012 18:54:31 +0100, Namespace rswhi...@googlemail.com wrote: I am considering to rewrite Remus from the ground up. Because I hope that Remus earn next time more interest, I would like to vote or discuss the features. Writing a D parser from the ground up, even if it's

Re: User Defined Attributes

2012-11-07 Thread Simen Kjaeraas
On 2012-39-06 20:11, Jacob Carlborg d...@me.com wrote: On 2012-11-06 19:24, David Nadlinger wrote: You are right, UDAs must definitely leverage D's module system for encapsulation/disambiguation. Use of string literals (which are intrinsically »global«) as annotations needs to be explicitly

Re: User Defined Attributes

2012-11-07 Thread Timon Gehr
On 11/07/2012 08:08 AM, Daniel Murphy wrote: Walter Bright newshou...@digitalmars.com wrote in message news:k7cko9$hes$1...@digitalmars.com... On 11/6/2012 6:10 PM, Daniel Murphy wrote: My thoughts exactly. It reminds me of the horror of C++ exceptions. I think it would be reasonable to

Re: vibe.d 0.7.9 released

2012-11-07 Thread Knud Soerensen
On 2012-10-31 12:30, Jordi Sayol wrote: Congratulations for this new release! New deb packages for vibe v0.7.9 available at https://code.google.com/p/d-apt/ When I make an apt-get update I get. W: Failed to fetch http://d-apt.googlecode.com/files/Release Unable to find expected entry

Re: User Defined Attributes

2012-11-07 Thread Jonathan M Davis
On Wednesday, November 07, 2012 13:01:52 Jacob Carlborg wrote: On 2012-11-07 12:05, Leandro Lucarella wrote: OK, that's another thing. And maybe a reason for listening to people having more experience with UDAs than you. For me the analogy with Exceptions is pretty good. The issues an

Re: User Defined Attributes

2012-11-07 Thread Leandro Lucarella
Don Clugston, el 7 de November a las 09:23 me escribiste: If you have no idea what my point is, I'm probably wasting my time working on D. If you mean, we should be working on getting the existing stuff working before we think about adding more stuff, I agree 100%. I would say we're about

Re: User Defined Attributes

2012-11-07 Thread Jacob Carlborg
On 2012-11-07 13:08, Jonathan M Davis wrote: Isn't that how it works in Java? It's been a while since I've done much with Java, but IIRC that's essentially how it works in Java. Yes, exactly, just with a slightly different syntax.

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 13:01, Jacob Carlborg a écrit : On 2012-11-07 12:05, Leandro Lucarella wrote: OK, that's another thing. And maybe a reason for listening to people having more experience with UDAs than you. For me the analogy with Exceptions is pretty good. The issues an conveniences of throwing

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 05:19, Walter Bright a écrit : On 11/6/2012 7:52 PM, bearophile wrote: Walter Bright: But I'm not sure at this point if that is the right thing to do. Why? D was fortunate in having 10 years of experience with C++'s exception system to learn from. We don't have that with

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 10:13, Timon Gehr a écrit : On 11/07/2012 08:08 AM, Daniel Murphy wrote: Walter Bright newshou...@digitalmars.com wrote in message news:k7cko9$hes$1...@digitalmars.com... On 11/6/2012 6:10 PM, Daniel Murphy wrote: My thoughts exactly. It reminds me of the horror of C++

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 09:23, Don Clugston a écrit : If you mean, we should be working on getting the existing stuff working before we think about adding more stuff, I agree 100%. That is a good part of my point. The other part being that surprise feature dropped in master, not only impair stability,

Re: User Defined Attributes

2012-11-07 Thread Daniel Murphy
Timon Gehr timon.g...@gmx.ch wrote in message news:k7d8n1$1o69$1...@digitalmars.com... Most importantly, if users still want to experiment with anonymous annotations, they still can: [tuple(3)] class Blah {} Then what does this particular restriction buy? It makes it harder to do the

Re: Remus

2012-11-07 Thread Namespace
On Wednesday, 7 November 2012 at 08:26:25 UTC, Aziz K. wrote: On Mon, 05 Nov 2012 18:54:31 +0100, Namespace rswhi...@googlemail.com wrote: I am considering to rewrite Remus from the ground up. Because I hope that Remus earn next time more interest, I would like to vote or discuss the

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 21:35, Walter Bright a écrit : On 11/7/2012 4:01 AM, Jacob Carlborg wrote: I start to more and more think it would be better to explicitly require the developer to declare an attribute, like: attribute foo { string name; } @foo(asd) int a; Adding a whole new aggregate type is

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 4:01 AM, Jacob Carlborg wrote: I start to more and more think it would be better to explicitly require the developer to declare an attribute, like: attribute foo { string name; } @foo(asd) int a; Adding a whole new aggregate type is a pretty intrusive and major change.

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 3:05 AM, Leandro Lucarella wrote: For me the analogy with Exceptions is pretty good. The issues an conveniences of throwing anything or annotating a symbol with anything instead of just type are pretty much the same. That's a good point, I just want to wryly remark on the

Re: User Defined Attributes

2012-11-07 Thread Jacob Carlborg
On 2012-11-07 21:41, Walter Bright wrote: Just functions? I thought one big use of UDAs was to mark classes as serializable. Exactly, the more we can annotated the better :) -- /Jacob Carlborg

Re: User Defined Attributes

2012-11-07 Thread Jacob Carlborg
On 2012-11-07 21:38, deadalnix wrote: Adding a whole new aggregate type is a pretty intrusive and major change. Is it? Just have it behave as a struct or class. But I guess the suggestion below is just as good. So let's defined in object.d the following : @attribute struct attribute {}

Re: User Defined Attributes

2012-11-07 Thread Nick Sabalausky
First of all: Awesome. Secondly: Fastest-growing thread ever? ;)

Re: User Defined Attributes

2012-11-07 Thread Jonathan M Davis
On Wednesday, November 07, 2012 16:45:20 Nick Sabalausky wrote: First of all: Awesome. Secondly: Fastest-growing thread ever? ;) In Announce? Probably. In all of the D groups? Probably not. There have been some _very_ active threads in the main newsgroup. This thread is quite tame in

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 3:05 AM, Leandro Lucarella wrote: OK, that's another thing. And maybe a reason for listening to people having more experience with UDAs than you. For me the analogy with Exceptions is pretty good. The issues an conveniences of throwing anything or annotating a symbol with anything

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 1:45 PM, Nick Sabalausky wrote: First of all: Awesome. Secondly: Fastest-growing thread ever? ;) The historical UDA threads have been large, too.

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 07/11/2012 23:20, Walter Bright a écrit : On 11/7/2012 3:05 AM, Leandro Lucarella wrote: OK, that's another thing. And maybe a reason for listening to people having more experience with UDAs than you. For me the analogy with Exceptions is pretty good. The issues an conveniences of throwing

Re: User Defined Attributes

2012-11-07 Thread Kapps
Awesome. Lack of UDA has really caused some very ugly workarounds in my code, and it's really nice to see that it's being solved now. Probably one of the most important missing features I've encountered. I do agree however with preventing any built-in types / literals being used as an

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 2:40 PM, deadalnix wrote: Java is mostly compile time (and optionally runtime). See http://projectlombok.org/ for what can be done at compile time with attributes + compiler hooks. Doesn't putting compiler hooks in for them make them inherently global?

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 3:06 PM, Kapps wrote: I do agree however with preventing any built-in types / literals being used as an annotation. It's just not safe, completely goes around the module system, and is abused in the same way as it would be with C++ exceptions. In C# for example, all attributes are

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
started a new thread on this over in digitalmars.D

Re: User Defined Attributes

2012-11-07 Thread Adam D. Ruppe
On Wednesday, 7 November 2012 at 23:17:24 UTC, Walter Bright wrote: Doesn't putting compiler hooks in for them make them inherently global? One of the previous threads put forth something like this: template MyAttribute(alias subject, T... arguments) { /* some implementation */ The

Re: User Defined Attributes

2012-11-07 Thread deadalnix
Le 08/11/2012 00:17, Walter Bright a écrit : On 11/7/2012 2:40 PM, deadalnix wrote: Java is mostly compile time (and optionally runtime). See http://projectlombok.org/ for what can be done at compile time with attributes + compiler hooks. Doesn't putting compiler hooks in for them make them

Re: User Defined Attributes

2012-11-07 Thread Walter Bright
On 11/7/2012 4:12 PM, deadalnix wrote: Le 08/11/2012 00:17, Walter Bright a écrit : On 11/7/2012 2:40 PM, deadalnix wrote: Java is mostly compile time (and optionally runtime). See http://projectlombok.org/ for what can be done at compile time with attributes + compiler hooks. Doesn't

Re: Remus

2012-11-07 Thread bearophile
Another interesting possible feature for Remus: as the usage of immutable structs becomes more common in D code, it becomes more useful a syntax to create an updated struct. Similar syntax is present in F# and other functional languages. struct Foo { int first, second, third; } immutable f1 =

Re: User Defined Attributes

2012-11-07 Thread Jacob Carlborg
On 2012-11-08 02:49, Walter Bright wrote: Yes, that makes the attribute global. I don't actually know how this works in Java but if you are forced to use the fully qualified name for the attribute it won't make the attribute global. -- /Jacob Carlborg

Re: User Defined Attributes

2012-11-07 Thread Jacob Carlborg
On 2012-11-08 00:43, Adam D. Ruppe wrote: One of the previous threads put forth something like this: template MyAttribute(alias subject, T... arguments) { /* some implementation */ The attribute is a template that replaces the declaration. So you type: [MyAttribute(foo)] class Something {}

Re: Remus

2012-11-07 Thread Namespace
On Thursday, 8 November 2012 at 03:21:03 UTC, bearophile wrote: Another interesting possible feature for Remus: as the usage of immutable structs becomes more common in D code, it becomes more useful a syntax to create an updated struct. Similar syntax is present in F# and other functional