-
Notifications
You must be signed in to change notification settings - Fork 323
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
Support cycles in the serialized IR structure #9361
Comments
Jaroslav Tulach reports a new STANDUP for yesterday (2024-05-16): Progress: - persistance with cycles: #9972
|
Jaroslav Tulach reports a new STANDUP for yesterday (2024-05-17): Progress: - cycles in persistance: https://github.com/enso-org/enso/pull/9972/files#r1604646728
|
Fixes #9361 by delaying storing of `Persistance.Reference` instances and creating their table at the end of the stream.
Jaroslav Tulach reports a new STANDUP for yesterday (2024-05-18): Progress: - reviewing Greg's #9950
|
Jaroslav Tulach reports a new STANDUP for yesterday (2024-05-19): Progress: - solving the
|
Jaroslav Tulach reports a new STANDUP for yesterday (2024-05-20): Progress: -
|
- Follow-up to #9361 - Enables assertions and fixes `count` check - Tests and fixes null references - Tests and fixes serializing a deserialized structure - by saving the id of the `Persistance` corresponding to the entry - After the change to how we determine which `Persistance` instance to use, the most specific one is now used (based on the saved id). This has an unfortunate consequence that `Seq` which is most of the time represented by a subtype of `List`, is now using `PersistScalaList` which is not lazy. - To alleviate that, we no longer use `Seq` to store some field lazily and instead use a dedicated type for that purpose: `InlineReference`.
As part of #8652 I'm extending the bindings map with additional metadata that results in a cycle within the IR. Currently, that causes the IR serialization to fail with
StackOverflow
, because there is no support for cycles.We want to expand our IR serialization to support such looping.
I've added a few tests demonstrating the expected behaviour on the branch wip/persistance-loops.
The text was updated successfully, but these errors were encountered: