*when I said type-safe, I actually meant type-stable as Tim was discussing

On Monday, July 6, 2015 at 7:48:23 PM UTC-4, Tom Breloff wrote:
>
> Yes for the general behavior I had in mind it would be nearly impossible 
> to keep the view constructor type-safe.   For certain uses, that's less 
> important than keeping the subsequent operations fast and type-safe, but 
> that may be a very steep hill to climb.
>
> As I'm thinking about the problem a little more, it might be very hard to 
> have a good general solution, but maybe I could implement some small 
> problem-specific methods that are fast for a limited purpose.  There are 2 
> examples that come to mind in OnlineStats: extending a vector/matrix 
> representing the X from a regression with a scalar/vector of ones for the 
> bias term, and concatenating an X and Y to pass through the sweep 
> operation.  It would be nice if there was a low-overhead way to do that 
> without needing to re-write the math.  Another use I have in mind is for 
> VAR/VECM impact analysis, where there is a large matrix with dense upper 
> and sparse lower... it would be nice to abstract that away.  These are 
> actually very different problems, and it's probably too ambitious to have 
> good solutions for both at the same time.
>
> Long story short, I might continue to work on some problem specific 
> solutions in a semi-reusable way... I'll post here if I think they could be 
> useful to anyone else.  If anyone looks at Blox.jl and thinks I should NOT 
> abandon what I was doing, please let me know.  :)
>
> On Monday, July 6, 2015 at 2:02:04 PM UTC-4, Tim Holy wrote:
>>
>> On Monday, July 06, 2015 10:59:48 AM Tom Breloff wrote: 
>> > I plan on adding "views" to this as well, which will probably just 
>> check to 
>> > see if the indices are contained within a sub-array to return an 
>> > ArrayViews::view, otherwise a light wrapper around a "BlockView" 
>>
>> You're not going to be able to do that in a type-stable way, because it's 
>> something that depends on the values of the indexes rather than their 
>> type. 
>>
>> --Tim 
>>
>>

Reply via email to