Skip to content

Conversation

@JaroslavTulach
Copy link
Member

@JaroslavTulach JaroslavTulach commented Jan 12, 2026

Pull Request Description

  • Fixes Default arguments are not being applied in constructors of builtin types #13664 by removing many @Builtin_Type annotations
  • There no point to treat regular types with Atom instances as builtin types
    • only special types like Vector or Date are really builtin types
  • encapsulation of private constructors is now enforced as demonstrated by a8f956d
  • side effect: expression messages are now human readable even without import Standard.Base

Important Notes

Rejected

  • The other rejected option is to fix the registration of constructors
    • 09de69e does that for Missing_Argument only
    • because doing the same registration for all tp.builtinType() makes the runtime "fubar"
    • along this direction I try to investigate what builtins can be registered and what cannot before "fubar" happens

Checklist

Please ensure that the following checklist has been satisfied before submitting the PR:

@JaroslavTulach JaroslavTulach added the CI: No changelog needed Do not require a changelog entry for this PR. label Jan 12, 2026
@JaroslavTulach JaroslavTulach force-pushed the wip/jtulach/OveruseOfBuiltinTypes13664 branch from 4a8731f to 23af588 Compare January 14, 2026 07:05
for (var t : threads.keySet()) {
try {
t.join();
// wait for threads, but don't deadlock
Copy link
Member Author

@JaroslavTulach JaroslavTulach Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • This is the deadlock.txt I have seen.
  • Happens when guest-code wants to initialize Java while some other thread is calling Context.close()
  • I guess we don't need 100% correctness here
    • after 10s lets give up
    • close the context while a thread is still running

@github-actions github-actions bot added the -libs-API-change-Base Marks a PR that changes the public API of Standard.Base label Jan 14, 2026
@JaroslavTulach JaroslavTulach added the CI: Clean build required CI runners will be cleaned before and after this PR is built. label Jan 15, 2026
Copy link
Member

@Akirathan Akirathan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Decreasing the number of builtins seems like a good path.

@JaroslavTulach JaroslavTulach merged commit 3777a66 into develop Jan 16, 2026
74 checks passed
@JaroslavTulach JaroslavTulach deleted the wip/jtulach/OveruseOfBuiltinTypes13664 branch January 16, 2026 10:34
@enso-bot
Copy link

enso-bot bot commented Jan 17, 2026

Jaroslav Tulach reports a new STANDUP for yesterday (2026-01-16):

Progress: .

@JaroslavTulach JaroslavTulach mentioned this pull request Jan 19, 2026
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

-libs-API-change-Base Marks a PR that changes the public API of Standard.Base CI: Clean build required CI runners will be cleaned before and after this PR is built. CI: No changelog needed Do not require a changelog entry for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Default arguments are not being applied in constructors of builtin types

5 participants