I just spent a couple hours making a library AA solution that is binary compatible with druntime's builtin AA.
The benefits:
- Proves that a library implementation is possible, also shows where shortcomings are.
- Usable at compile time to make an AA that can be used at runtime.
- Much more approachable code than the AA runtime, does not require "faking" a typeinfo, dealing with typeinfo in general, or deal with magic compiler hooks. This gives a good base to start experimenting with.
For the future:
- Implement all the things that AAs can do (which are possible, some are not).
- Look at alternatives to GC for allocation/deallocation.
- Possible use with betterC?
Anyway, enjoy!
https://code.dlang.org/packages/newaa
-Steve