[julia-users] Re: N in NTuple not enforced

2014-11-28 Thread Andrew Dolgert
I didn't know about NTuple. It's not a typical TypeConstructor, made with typealias. It's a core type, implemented in jltypes.c, and you've found a bug. Let's look more closely. julia> snoop(x)=(println(x, " ", typeof(x)); x) julia> type ftest{T} data::f(NTuple{T,Int}) end NTuple{T,Int64}

Re: [julia-users] Re: N in NTuple not enforced

2014-11-29 Thread Stefan Karpinski
Sound analysis. Care to take a crack at a fix since you've gotten this far? You might end up as contributor #300 :-) > On Nov 29, 2014, at 1:03 AM, Andrew Dolgert wrote: > > I didn't know about NTuple. It's not a typical TypeConstructor, made with > typealias. It's a core type, implemented in

Re: [julia-users] Re: N in NTuple not enforced

2014-11-29 Thread Andrew Dolgert
Apparently I was wanting something to do. I'll fix it. - Drew

Re: [julia-users] Re: N in NTuple not enforced

2014-11-30 Thread Andreas Noack
Hi Drew Thanks for the explanation. I didn't know the snoop trick. Andreas 2014-11-29 12:35 GMT-05:00 Andrew Dolgert : > Apparently I was wanting something to do. I'll fix it. - Drew > >

Re: [julia-users] Re: N in NTuple not enforced

2014-11-30 Thread Drew Dolgert
You figured out that I had a typo where I renamed f() to snoop(). If you're interested in how Julia deals with types, and you may not be, forget the weird function-on-the-right thing, and take a look at code_lowered() and code_typed(). Most of the bug you found happens during a call to typeinte