What's not clear from reading TFA is whether the compiler monomorphizes TFA's `Compact_array` for the two special cases of it (array of bytes vs. array of anything else), but I'm assuming so. Perhaps if I was familiar with OCaml the answer would be blindingly obvious. What's happening here is that w/ GADTs you can have a _singular_ abstraction with multiple distinct implementations for specific types and others for generic types, and you don't have to think about it too much, except you have to remember to use these type hints in the interface definitions to get the compiler to do what you want.<p>> Yaron Minsky joined Jane Street back in 2002, and claims the dubious honor of having convinced the firm to start using OCaml.<p>That's pretty cool. And I guess Stephen Dolan ended up there due to his work on OCaml, which is pretty cool too. (I'd like to meet Stephen some day.)