Question on layer/peeling

Brian Goetz brian.goetz at oracle.com
Tue Jan 6 23:09:03 UTC 2015


Sorry, that's the internal joke-name of "__WhereRef(T)".

On 1/6/2015 6:04 PM, Michael Barker wrote:
>     Great progress!  Can you enumerate the methods or code paths that
>     you had to #ifref out, and why?  Then it can form a sort of
>     "scoreboard", where we can burn down on the list of accidental hacks
>     as we improve the implementation, eventually converging on the
>     desired (hack-free) result.
>
>
> What is '#ifref'?  Is that a compiler directive?  If so the answer is
> none.  The only real issues were the ones mentioned previously.
>
> The code is up on github[1], note that it is not a conversion of
> java.util.Map, but a conversion of an open addressed hash map similar to
> one that we use internally (specifically it is a port of the one from
> the Agrona project[2]).  One of the interesting aspects of the
> implementation is that I have to use a BitSet rather than relying on
> null to determine if a value is present or now.  I'd replace this with
> an any-ified value type for the key or value once value types are ready.
>
> [1]
> https://github.com/mikeb01/SpecialisedMap/blob/master/src/github/mikeb01/SpecializedOpenHashMap.java
> [2]
> https://github.com/real-logic/Agrona/blob/master/src/main/java/uk/co/real_logic/agrona/collections/Long2ObjectHashMap.java


More information about the valhalla-dev mailing list