Yes, that's fine. I thought you meant in combination with generating multiple 
types of different names.

--Tim

On Tuesday, February 11, 2014 01:57:08 PM Fil Mackay wrote:
> I just implemented an "itexprs" and it gives:
> 
> @eval begin
>     type Test1
>         @itexprs 3:5 i->a_i::Int
>     end
> end
> 
> names(Test1)
> 
> 5-element Array{Symbol,1}:
>  :a_3
>  :a_4
>  :a_5
> 
> Is this not useful, in that I can now pass in any iterator not just a 1:N..
> doesn't the above allow you to avoid collisions?
> 
> On Tue, Feb 11, 2014 at 1:42 PM, Tim Holy <tim.h...@gmail.com> wrote:
> > On Monday, February 10, 2014 06:19:03 PM Fil Mackay wrote:
> > > Nice one.. is there a @nexprs that can take a compile-time iterable, and
> > > map function that produces a child expression for each item? Kind of
> > > like
> > > replacing $N with "1:5" rather than one value at a time. That's what I'm
> > > really looking for.
> > 
> > No there isn't, and at the moment I don't see how it would be useful. In
> > many
> > circumstances you use a whole collection of cartesian macros together, and
> > guessing how the different terms are supposed to be interleaved would be
> > an
> > exercise in mind-reading. For example, in this case, if @nexprs took a
> > 1:5,
> > you'd be trying to generate multiple fields named a_1 within a single
> > type,
> > which would obviously be an error.
> > 
> > --Tim

Reply via email to