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

Atoms with lazy fields cause StackOverflow in chrome inspector #7138

Closed
Akirathan opened this issue Jun 27, 2023 · 6 comments · Fixed by #12253
Closed

Atoms with lazy fields cause StackOverflow in chrome inspector #7138

Akirathan opened this issue Jun 27, 2023 · 6 comments · Fixed by #12253
Assignees
Labels

Comments

@Akirathan
Copy link
Member

Akirathan commented Jun 27, 2023

To reproduce, run enso --in-project test/tests --inspect --run test/Tests/src/Runtime/Lazy_Generator_Spec.enso on:
https://github.com/enso-org/enso/blob/5f44805fc59c94095525d77ed113adb9b15c0bf4/test/Tests/src/Runtime/Lazy_Generator_Spec.enso

Add a breakpoint into the block under Test.specify.

image

The best approach is probably to modify SuspendFieldGetterNode.java such that it knows that it is called from a debugger, and if so, it will not try to evaluate the getter, but instead just return the thunk.

@Akirathan Akirathan added -tooling Category: tooling --bug Type: bug -compiler labels Jun 27, 2023
@Akirathan Akirathan self-assigned this Jun 27, 2023
@JaroslavTulach JaroslavTulach moved this from ❓New to 📤 Backlog in Issues Board Jun 28, 2023
@Akirathan
Copy link
Member Author

Akirathan commented Feb 10, 2025

Still reproducible on latest develop

@Akirathan
Copy link
Member Author

The underlying problem is in infinite recursion in to_text on an Atom with lazy field. So the minimal reproducer is:

from Standard.Base.Any import all

type Generator
    Value n ~next

natural =
    gen n = Generator.Value n (gen n+1)
    gen 2

main =
    two = natural
    two.to_text

@Akirathan Akirathan moved this from 📤 Backlog to 🔧 Implementation in Issues Board Feb 10, 2025
@enso-bot
Copy link

enso-bot bot commented Feb 10, 2025

Pavel Marek reports a new STANDUP for today (2025-02-10):

Progress: - Finally merged #12223 - let's keep an eye for upcomming nightlies.

@Akirathan Akirathan moved this from 🔧 Implementation to 👁️ Code review in Issues Board Feb 11, 2025
@enso-bot
Copy link

enso-bot bot commented Feb 11, 2025

Pavel Marek reports a new STANDUP for today (2025-02-11):

Progress: - Spotted bench regressions:

@enso-bot
Copy link

enso-bot bot commented Feb 13, 2025

Pavel Marek reports a new STANDUP for yesterday (2025-02-12):

Progress: - Invocation of methods on type via interop does not have to be consistent with pure Enso invocation:

@enso-bot
Copy link

enso-bot bot commented Feb 13, 2025

Pavel Marek reports a new STANDUP for today (2025-02-13):

Progress: - Revival of the VueJS benchmarks SPA.

  • SHould be able to start deploying in just few days. It should be finished by 2025-02-13.

@github-project-automation github-project-automation bot moved this from 👁️ Code review to 🟢 Accepted in Issues Board Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: 🟢 Accepted
Development

Successfully merging a pull request may close this issue.

2 participants