Thanks.  I noticed that right after I posted but couldn't find my post to 
fix it.  Here's a working version

using Base.Cartesian
stagedfunction convn{T,N}(A::Array{T,N}, B::Array{T,N})
    quote
        retsize = [size(A)...] + [size(B)...] - 1
        retsize = tuple(retsize...)
        ret = zeros(T, retsize)
        @nloops $N i A begin
            @nloops $N j B begin
                (@nref $N ret d->(i_d + j_d - 1)) += (@nref $N A i) * 
(@nref $N B j)
            end
        end
        return ret
    end
end


On Monday, April 13, 2015 at 8:06:08 PM UTC-5, Tim Holy wrote:
>
> You forgot the $N on the two @nref on the right hand side: 
>
> On Monday, April 13, 2015 08:05:15 AM Derek Thomas wrote: 
> >                 (@nref $N ret k->(i_d + j_d)) = (@nref A i) * (@nref B 
> j) 
>
> --Tim 
>

Reply via email to