No, I don't think that gets me all the way to what I want, although it
might be a reasonable approach to one *part* of it. The main idea I'm after
is efficient representations of things like HashMap, where nodes in a tree
have variable numbers of children. First, let's look at how HashMap is
David Feuer writes:
> Ah, too bad about reuse. What do you mean about walking over both pointers
> and non-pointers? The extra word (for pointers-first layout) or few words
> (for bitmapped) will be more than made up for in most cases by not needing
> extra heap objects between a node and its
Ah, too bad about reuse. What do you mean about walking over both pointers
and non-pointers? The extra word (for pointers-first layout) or few words
(for bitmapped) will be more than made up for in most cases by not needing
extra heap objects between a node and its children.
Simon has explained
On October 7, 2020 2:02:53 PM EDT, David Feuer wrote:
>Yes, the bitmap structures used to encode the structure of stack
>frames. These *look* like they might be reusable for mix-and-match
>arrays in Haskell-land. If so, that could be a pretty cheap new
>feature.
Ahh, yes. In principle we could
Yes, the bitmap structures used to encode the structure of stack
frames. These *look* like they might be reusable for mix-and-match
arrays in Haskell-land. If so, that could be a pretty cheap new
feature.
On Wed, Oct 7, 2020 at 1:37 PM Ben Gamari wrote:
>
> David Feuer writes:
>
> > It appears
David Feuer writes:
> It appears that the RTS has more flexibility in its array representations
> than users can access through primops. In particular, there are
> "pointers-first" and "bitmapped" arrays. Are these used for the evaluation
> stack or something? I'd be very interested in getting
It appears that the RTS has more flexibility in its array representations
than users can access through primops. In particular, there are
"pointers-first" and "bitmapped" arrays. Are these used for the evaluation
stack or something? I'd be very interested in getting user access to some
of this