enso/test
James Dunkerley fb68f18739
Within Vector, use Array.Copy wherever possible (#3236)
Following the Slice and Array.Copy experiment, took just the Array.Copy parts out and built into the Vector class.

This gives big performance wins in common operations:

| Test | Ref | New |
| --- | --- | --- |
| New Vector | 41.5 | 41.4 |
| Append Single | 26.6 | 4.2 |
| Append Large | 26.6 | 4.2 |
| Sum | 230.1 | 99.1 |
| Drop First 20 and Sum | 343.5 | 96.9 |
| Drop Last 20 and Sum | 311.7 | 96.9 |
| Filter | 240.2 | 92.5 |
| Filter With Index | 364.9 | 237.2 |
| Partition | 772.6 | 280.4 |
| Partition With Index | 912.3 | 427.9 |
| Each | 110.2 | 113.3 |

*Benchmarks run on an AWS EC2 r5a.xlarge with 1,000,000 item count, 100  iteration size run 10 times.*

# Important Notes
Have generally tried to push the `@Tail_Call` down from the Vector class and move to calling functions on the range class.

- Expanded benchmarks on Vector
- Added `take` method to Vector
- Added `each_with_index` method to Vector
- Added `filter_with_index` method to Vector
2022-03-03 15:40:48 +00:00
..
Benchmarks Within Vector, use Array.Copy wherever possible (#3236) 2022-03-03 15:40:48 +00:00
Database_Tests Fix the Test library ignoring dataflow errors (#3312) 2022-03-03 11:02:13 +01:00
Geo_Tests Import syntax including namespace (#1806) 2021-06-24 12:42:24 +02:00
Google_Api_Test Google Spreadsheet Reading (#1976) 2021-09-03 21:41:12 +02:00
Image_Tests Fix codec spec (#3185) 2021-12-09 15:01:47 +03:00
Table_Tests Table.group_by (#3305) 2022-03-01 16:18:11 +00:00
Tests Within Vector, use Array.Copy wherever possible (#3236) 2022-03-03 15:40:48 +00:00
Visualization_Tests Import syntax including namespace (#1806) 2021-06-24 12:42:24 +02:00