When I went to actually do this, it became super clear that I'm extremely muddy about how the types line up. This code typechecks and compiles, but I'm about 90% sure I haven't got the right types matching up to the right things.
Hopefully you get the gist of what I'm trying to do even though this will definitely need some discussion, better docs & commenting and correcting. I ran out of time to work on this tonight — blew my allocated timebox.
Further to discussion on issue #42
When I went to actually do this, it became super clear that I'm extremely muddy about how the types line up. This code typechecks and compiles, but I'm about 90% sure I haven't got the right types matching up to the right things.
Hopefully you get the gist of what I'm trying to do even though this will definitely need some discussion, better docs & commenting and correcting. I ran out of time to work on this tonight — blew my allocated timebox.