themetaschemer / malt

Machine Learning Toolkit accompanying The Little Learner by Daniel P. Friedman and Anurag Mendhekar
MIT License
212 stars 25 forks source link

tref fails on with out of range error when tensor input is a product of tensors #10

Closed joeschmo closed 1 year ago

joeschmo commented 1 year ago

Similar to #9, this also fails on Chapter 5, p 106, frame 27

$ racket
Welcome to Racket v8.8 [cs].
> (require malt)
> (* (tensor 1.0 2.0) (tensor 3.0 4.0))
(tensor 3.0 8.0)
> (tref (tensor 3.0 8.0) 1)
8.0
> (tref (* (tensor 1.0 2.0) (tensor 3.0 4.0)) 1)
vector-ref: index is out of range
  index: 6
  valid range: [0, 2]
  vector: (tensor 3.0 8.0)
 [,bt for context]
> ,bt
vector-ref: index is out of range
  index: 6
  valid range: [0, 2]
  vector: (tensor 3.0 8.0)
  context...:
   C:\Users\josep\AppData\Roaming\Racket\8.8\pkgs\malt\flat-tensors\tensors\B-tensor-basics.rkt:24:2: body of top-level
   C:\Program Files\Racket\share\pkgs\xrepl-lib\xrepl\xrepl.rkt:1573:0
   C:\Program Files\Racket\collects\racket\repl.rkt:11:26
themetaschemer commented 1 year ago

Thanks for reporting. Fixed in 9efaf61. Please pull.