JP Sugarbroad
JP Sugarbroad
In my zip file reader, I used the `Blob.prototype.slice` API to get `readAt` functionality on files.
FWIW there is a difference between streaming read, where you probably want aggressive readahead etc., and delimited random access read, where you probably don't and might even want discard-type behavior....
Is there no `Acquire` in `get`?
Is it still quadratic if we don't support width subtyping of unions? The use cases I've gathered don't need it.
A|B wouldn't be a subtype of A|B|C, but A and B would be subtypes of both.
Let me think a bit more about it, but that might be ok. It probably requires coercive subtyping, though, which we've been avoiding so far.
I'm left feeling like the correct thing is just to bound the "size" of types to make the problem tractable rather than restricting functionality to linear or near-linear complexity.
Another factor to consider: is a timestamp wallclock time or monotonic time? Go, for example, uses both in an adaptive fashion.
I'm not clear on how this issue is different from #35, honestly.
On x86 division is already a >24 cycle instruction. It doesn't seem to me that a few bounds checks will noticeably impact performance.