View mode: basic / threaded / horizontal-split · Log in · Help
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On 12/10/2012 12:04 PM, Jonathan M Davis wrote:
> Regardless, the UDA stuff can't be in the next release.

Why? (It's being heavily used by some people.)
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright wrote:
> Why? (It's being heavily used by some people.)

I'm *really* looking forward to UDAs in the next release. Even if 
the syntax changes in 2.62, I'd still like to have it in 2.61 
just because there's so many things I can do with it.
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On Monday, 10 December 2012 at 21:57:58 UTC, Adam D. Ruppe wrote:
> On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright 
> wrote:
>> Why? (It's being heavily used by some people.)
>
> I'm *really* looking forward to UDAs in the next release. Even 
> if the syntax changes in 2.62, I'd still like to have it in 
> 2.61 just because there's so many things I can do with it.

This is why we desperately need a rock solid stable branch, but 
also a pre-release testing branch that is in a reasonably stable 
state that includes that latest fixes and features that are 
deemed to be "close to ready", and for any of that to work, there 
has to be a separate development branch for the inclusion of 
brand new features and other experimental work.

--rt
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On 12/10/2012 1:57 PM, Adam D. Ruppe wrote:
> On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright wrote:
>> Why? (It's being heavily used by some people.)
>
> I'm *really* looking forward to UDAs in the next release. Even if the syntax
> changes in 2.62, I'd still like to have it in 2.61 just because there's so many
> things I can do with it.

The syntax will be:

   @(attributes)

and:

   @identifier

although the latter isn't implemented yet.
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On Monday, 10 December 2012 at 22:15:09 UTC, Walter Bright wrote:
> On 12/10/2012 1:57 PM, Adam D. Ruppe wrote:
>> On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright 
>> wrote:
>>> Why? (It's being heavily used by some people.)
>>
>> I'm *really* looking forward to UDAs in the next release. Even 
>> if the syntax
>> changes in 2.62, I'd still like to have it in 2.61 just 
>> because there's so many
>> things I can do with it.
>
> The syntax will be:
>
>    @(attributes)
>
> and:
>
>    @identifier
>
> although the latter isn't implemented yet.

So @identifier(args) and @identifier!(args) will require parens?
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On 12/10/2012 2:20 PM, Max Samukha wrote:
> On Monday, 10 December 2012 at 22:15:09 UTC, Walter Bright wrote:
>> On 12/10/2012 1:57 PM, Adam D. Ruppe wrote:
>>> On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright wrote:
>>>> Why? (It's being heavily used by some people.)
>>>
>>> I'm *really* looking forward to UDAs in the next release. Even if the syntax
>>> changes in 2.62, I'd still like to have it in 2.61 just because there's so many
>>> things I can do with it.
>>
>> The syntax will be:
>>
>>    @(attributes)
>>
>> and:
>>
>>    @identifier
>>
>> although the latter isn't implemented yet.
>
> So @identifier(args) and @identifier!(args) will require parens?

Good question. I think it shouldn't.
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On 12/10/2012 8:28 AM, Denis Shelomovskij wrote:
> This was the result of DustMite-ing my sources:
> http://d.puremagic.com/issues/show_bug.cgi?id=6296
>
> Currently the bug state is a bit confusing. It is a regression (but I didn't
> mark it that way, only write in description, sorry) but is resolved as a
> duplicate of a non-regression unfixed bug 4269. It was a small war between
> "regression" and "normal" state of 4269 and now it is marked as "normal".


It isn't a regression, and the test cases you reported work in D1 and D2.
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On Monday, 10 December 2012 at 22:56:45 UTC, Walter Bright wrote:
> On 12/10/2012 2:20 PM, Max Samukha wrote:
>> On Monday, 10 December 2012 at 22:15:09 UTC, Walter Bright 
>> wrote:
>>> On 12/10/2012 1:57 PM, Adam D. Ruppe wrote:
>>>> On Monday, 10 December 2012 at 21:50:47 UTC, Walter Bright 
>>>> wrote:
>>>>> Why? (It's being heavily used by some people.)
>>>>
>>>> I'm *really* looking forward to UDAs in the next release. 
>>>> Even if the syntax
>>>> changes in 2.62, I'd still like to have it in 2.61 just 
>>>> because there's so many
>>>> things I can do with it.
>>>
>>> The syntax will be:
>>>
>>>   @(attributes)
>>>
>>> and:
>>>
>>>   @identifier
>>>
>>> although the latter isn't implemented yet.
>>
>> So @identifier(args) and @identifier!(args) will require 
>> parens?
>
> Good question. I think it shouldn't.

Probably it should. Single parametrized attributes (in the form 
of templates or CTFE constructors) are very likely to occur as 
often (if not more often) as parameterless (as they do in C#, for 
example).
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On Monday, December 10, 2012 13:50:47 Walter Bright wrote:
> On 12/10/2012 12:04 PM, Jonathan M Davis wrote:
> > Regardless, the UDA stuff can't be in the next release.
> 
> Why? (It's being heavily used by some people.)

It hasn't even been properly worked out yet, and new features like that 
shouldn't be being introduced in the main branch. It's not at all ready for 
general consumption, and if it's in there, people are going to start using it 
and then complaining when their code breaks when we change it later. It's the 
sort of thing that should be on a separate branch and not in master. Even 
worse, if the new stable branch that we've been talking about includes this, 
then you'll have programmers programming with it for months before they get 
the updates with the design that we're actually going to end up with, meaning 
that that much more code will be written for that much longer with an 
incomplete feature, waiting to be broken when the feature is actually updated 
in the version of the compiler that they're using.

Andrei was already complaining about this was handled in the thread where they 
were introduced, and I expect that he'll agree that it shouldn't be in the 
release. It's not ready.

- Jonathan M Davis
December 10, 2012
Re: Moving towards D2 2.061 (and D1 1.076)
On 12/10/2012 3:35 PM, Jonathan M Davis wrote:
> On Monday, December 10, 2012 13:50:47 Walter Bright wrote:
>> Why? (It's being heavily used by some people.)
>
> It hasn't even been properly worked out yet, and new features like that
> shouldn't be being introduced in the main branch. It's not at all ready for
> general consumption, and if it's in there, people are going to start using it
> and then complaining when their code breaks when we change it later. It's the
> sort of thing that should be on a separate branch and not in master. Even
> worse, if the new stable branch that we've been talking about includes this,
> then you'll have programmers programming with it for months before they get
> the updates with the design that we're actually going to end up with, meaning
> that that much more code will be written for that much longer with an
> incomplete feature, waiting to be broken when the feature is actually updated
> in the version of the compiler that they're using.

We've debated this feature at length in various threads. It's under heavy use by 
some people. It does not break any existing code. I don't see any unresolved 
issue that should delay its incorporation.
1 2 3 4 5 6 7 8
Top | Discussion index | About this forum | D home