Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consolidate Vector & Array #5011

Closed
3 of 7 tasks
wdanilo opened this issue Feb 5, 2023 · 2 comments · Fixed by #6218
Closed
3 of 7 tasks

Consolidate Vector & Array #5011

wdanilo opened this issue Feb 5, 2023 · 2 comments · Fixed by #6218
Assignees
Labels
-compiler -libs Libraries: New libraries to be implemented l-vector p-low Low priority x-new-feature Type: new feature request
Milestone

Comments

@wdanilo
Copy link
Member

wdanilo commented Feb 5, 2023

This task is automatically imported from the old Task Issue Board and it was originally created by jaroslavtulach.
Original issue is here.


#183000876 has removed the difference between Enso Array & Vector - they both "duck like a polyglot array". The only difference is that Vector originates from Enso and is idealized as immutable. Array comes from Java, JavaScript, Python, etc. and nobody knows much about it.

The next step is to consolidate them more:

  • methods available on Vector and Array shall be the same (as much as possible)
  • methods needlessly converting between them can be removed - like Vector.to_array, Vector.unsafe_at
  • the Vector.from_polyglot_array method shall be renamed - see discussion

Tasks:

  • Write a test that compares methods available on Vector and Array type
  • Make sure the same methods are available in both types
  • Make sure Vector and polyglot array can be used interchangeably when calling builtins

Deferred Tasks

  • Remove methods that make no sense anymore (likely Vector.to_array)
  • Find better name for Vector.from_polyglot_array
  • Benchmark using at instead of unsafe_at and if fine, remove unsafe_at
  • Remove needless conversions to Vector - like (Vector.from_array arr) . map

Blockers:

#183000876 resolved
#183266964 resolved
#183058716 resolved
#184278959 resolved

Comments:

To consolidate Vector & Array we want to make sure both Vector and Array can be used interchangeably. That's not currently the case. There are two known problems where explicit convertsion to_array is still required:

  • #183266964
  • #183058716

I am afraid we have to address these two sample needless conversions in builtins before we can claim a victory in consolidating Vector & Array.
(jaroslavtulach - Sep 29, 2022)


**Hubert Plociniczak** reports a new **STANDUP** for yesterday (2023-01-09):

Progress: QA, trying to work on consolidation but little work done due to other distractions. Investigated double reporting of errors as noticed by Radek (will report the ticket once I have something tangible). It should be finished by 2023-01-12.

Next Day: Next day I will be working on the #183217534 task. More QA and consolidation work. (Enso Bot - Jan 10, 2023)


**Hubert Plociniczak** reports a new **STANDUP** for yesterday (2023-01-11):

Progress: QA, problems with Windows setup to reproduce vcs issues. Minor tweaks to consolidation work (decided to postpone until James' work on API improvements lands. It should be finished by 2023-01-12.

Next Day: Next day I will be working on the #183217534 task. Look into resolving fully qualified names, pick up vector/array work. (Enso Bot - Jan 12, 2023)


@wdanilo wdanilo moved this to 🏗 In progress in Issues Board Feb 6, 2023
@wdanilo wdanilo added this to the Beta Release milestone Feb 6, 2023
@jdunkerley jdunkerley moved this from 🔧 In progress to 📤 Backlog in Issues Board Feb 7, 2023
@jdunkerley jdunkerley self-assigned this Feb 14, 2023
@jdunkerley jdunkerley moved this from 📤 Backlog to ❓New in Issues Board Feb 14, 2023
@jdunkerley jdunkerley moved this from ❓New to 📤 Backlog in Issues Board Feb 14, 2023
@enso-bot
Copy link

enso-bot bot commented Apr 6, 2023

Jaroslav Tulach reports a new STANDUP for yesterday (2023-04-06):

Progress: - Consolidate Array and Vector: #6218

Next Day: Easter vacation

@jdunkerley jdunkerley moved this from 📤 Backlog to 👁️ Code review in Issues Board Apr 11, 2023
@mergify mergify bot closed this as completed in #6218 Apr 11, 2023
mergify bot pushed a commit that referenced this issue Apr 11, 2023
Fixes #5011 by making sure the same methods that are on `Vector` are also available on `Array`.
@github-project-automation github-project-automation bot moved this from 👁️ Code review to 🟢 Accepted in Issues Board Apr 11, 2023
@enso-bot
Copy link

enso-bot bot commented Apr 12, 2023

Jaroslav Tulach reports a new STANDUP for yesterday (2023-04-11):

Progress: - Array&Vector PR merged: #6218

Next Day: 5x slower if cascade

GitHub
The context The PR #3764 introduced a calling convention that allows to write Foo.method (Mk_Foo 123) as a synonym of (Mk_Foo 123).method (just to note, the status of the static/instance calls befo...
GitHub
Pull Request Description

close #6133
Changelog:

add: executionContext/setExecutionEnvironment request
update: executionContext/recompute request to have optional executionEnvironment parameter.

...

GitHub
As we now have a built-in Map type we would like to add a literal format to create a map instance. There appears to have been old support within the old parser for a syntax: enso/engine/runtime/src...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-compiler -libs Libraries: New libraries to be implemented l-vector p-low Low priority x-new-feature Type: new feature request
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

4 participants