This seems like a pretty nice way to do this, since it lets us produce the sliced version of each value rather than the somewhat janky many pointer.
This looks a lot nicer than its c counterpart, in my opinion.