Я тут дошел до определения вектора и до примера, иллюстрирующего умножение вектора на число:
(define (displacement v t)
(local (
(define
(new-item i) (* (vector-ref v i) t)
)
)
(build-vector (vector-length v) new-item)
)
)
> (displacement (vector 1 2 3) 5)
(vector 5 10 15)
В общем то, все понятно, но один момент нигде ранее не был описан, поэтому хотелось бы уточнить. А каким образом параметр i передается в функцию new-item?
То есть, вот определение функции:
(define (new-item i)...
Вот ее вызов:
... new-item)
Нуром чую, что язык автоматически в качестве этого параметра протягивает туда порядковый номер элемента в векторе. Но ведь нигде не сказано, что так можно???
Что это за конструкция языка? Где так можно делать: только в инструкции build-vector, в ограниченном наборе инструкций или это какое-то глобальное свойство языка?
... << RSDN@Home 1.2.0 alpha rev. 786>>