Issue 23602 - Reimplement associative arrays on runtime
Summary: Reimplement associative arrays on runtime
Status: NEW
Alias: None
Product: D
Classification: Unclassified
Component: druntime (show other issues)
Version: D2
Hardware: x86 All
: P4 enhancement
Assignee: No Owner
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-05 19:38 UTC by Marcelo Silva Nascimento Mancini
Modified: 2024-12-07 13:42 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Marcelo Silva Nascimento Mancini 2023-01-05 19:38:14 UTC
Current D Runtime Associative Array is pretty buggy. After talking with some, people, its implementation was done even before D having templates, so, it should not be too hard to do it better than how it is now[1]. Right no no one wanted to rework on it, but everyone which tried doing a custom druntime basically dropped support for associative arrays given how confusing is to implement them. I'm working on them for Adam's minimal runtime and I just saw that implementing them would basically be as complex as implementing everything that has been done so far for this minimal wasm runtime.

There is some proposals such as mapping Associative Array to a library type rather than doing bunch of hooks, which seems to be a better solution for the long run.

[1]: Steve has done a new associative array implementation that maps to the current one, it has roughly 1/3 LoC the current one has and it is a lot easier to understand: https://github.com/schveiguy/newaa/blob/master/source/schlib/newaa.d
Comment 1 dlangBugzillaToGithub 2024-12-07 13:42:21 UTC
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/17455

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB