enso/distribution
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
..
bin Project Manager Native Image (#1318) 2020-12-09 14:58:11 +01:00
engine/THIRD-PARTY Update Scala to 2.13.7 (#3214) 2021-12-31 17:50:32 +03:00
launcher Update Scala to 2.13.7 (#3214) 2021-12-31 17:50:32 +03:00
lib/Standard Within Vector, use Array.Copy wherever possible (#3236) 2022-03-03 15:40:48 +00:00
project-manager/THIRD-PARTY Update Scala to 2.13.7 (#3214) 2021-12-31 17:50:32 +03:00
enso.bundle.template Better component handling in the project manager (#1399) 2021-01-15 15:26:51 +00:00
launcher-manifest.yaml Bump the development version number (#1389) 2021-01-06 08:57:02 +00:00
manifest.template.yaml Bump Minimal PM/Launcher Versions for New Engine (#1854) 2021-07-13 13:08:00 +02:00