On 6 April 2012 17:17, Adam D. Ruppe <destructionator@gmail.com> wrote:
On Friday, 6 April 2012 at 14:11:42 UTC, Manu wrote:
Except you're using a function, which I don't follow.

It is pretty simple: the return value of the function
is stored in the compiler, the same as all the other
proposals.

The struct thing is the same, really. You're just calling
a constructor there instead of a regular function.


Really, of the... what five proposals out there now? But
they are all almost the same. A constructor, a function
call, an expression, or a field initializor list all
give the same result - they all return a piece of data,
which is attached to the declaration in the compiler.

We're just quibbling over details. I say we just forget
about that and pick one to make this happen.

I barely even care which one right now.

Ah okay, I see now. You're just using a creator, instead of a constructor. Yeah fine, whatever.
I'm not quibbling over details, it just wasn't clear to me at all from your syntax what it was you were actually doing (see: intuitive).

The only thing I care about is that I can associate an arbitrary data struct, and ideally, the syntax is intuitive and minimal.
I prefer to use the constructor personally (I think it produces a much simpler/intuitive syntax), and I also like that the '@attribute' keyword is not necessary in Johannes version, but I really don't care. Whatever works best in practise, as long as the basic premise is met.