Mercurial > hg > may
changeset 269:0011c9a8c0ec
Add repeated
author | Chris Cannam |
---|---|
date | Thu, 23 May 2013 14:39:40 +0100 |
parents | b5cd42899526 |
children | d7dd391a90fd |
files | yetilab/vector/test/test_vector.yeti yetilab/vector/vector.yeti |
diffstat | 2 files changed, 12 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/yetilab/vector/test/test_vector.yeti Thu May 23 14:39:18 2013 +0100 +++ b/yetilab/vector/test/test_vector.yeti Thu May 23 14:39:40 2013 +0100 @@ -90,6 +90,13 @@ vec.equal (vec.resizedTo 2 (vec.fromList [1,2,3])) (vec.fromList [1,2]); ), +"repeated": \( + vec.equal (vec.repeated (vec.fromList []) 2) (vec.fromList []) and + vec.equal (vec.repeated (vec.fromList [1,2,3]) 0) (vec.fromList []) and + vec.equal (vec.repeated (vec.fromList [1,2,3]) 1) (vec.fromList [1,2,3]) and + vec.equal (vec.repeated (vec.fromList [1,2,3]) 2) (vec.fromList [1,2,3,1,2,3]) +), + "reversed": \( vec.equal (vec.reversed (vec.fromList [])) (vec.fromList []) and vec.equal (vec.reversed (vec.fromList [1,2,3])) (vec.fromList [3,2,1]) and
--- a/yetilab/vector/vector.yeti Thu May 23 14:39:18 2013 +0100 +++ b/yetilab/vector/vector.yeti Thu May 23 14:39:40 2013 +0100 @@ -96,6 +96,9 @@ done; vout); +repeated v n is ~double[] -> number -> ~double[] = + concat (map \(v) [1..n]); + { zeros, consts, @@ -115,6 +118,7 @@ slice, resizedTo, reversed, + repeated, concat, } as { zeros is number -> vector, @@ -135,6 +139,7 @@ slice is vector -> number -> number -> vector, resizedTo is number -> vector -> vector, reversed is vector -> vector, + repeated is vector -> number -> vector, concat is list?<vector> -> vector, }