Comment made by: gshayban
This ticket needs help. Step 0 is writing a benchmark harness that exercises maps of various sizes, and the various polymorphic arguments below.
After a benchmark harness, implementation code needs to preserve this behavior:
- If the first argument is not nil, its metadata propagates to the result.
- The arguments can be a Map.Entry, an IPersistentVector where size=2, and regular maps.
- When passed a non-map as the first argument, result is undefined.