1. 1

    If you look past the headline, this is really cool technically as well. They implemented a general string-wise sequential CRDT library https://github.com/atom/teletype-crdt. I wonder what other cool projects one could hack together with this as a base.

    1. 1

      It appears to be based on protobufs, which is a really interesting binary messaging format: https://grpc.io/

    1. 5

      This was shared in the comments to Dude Where’s My char[] and I thought it was worth pushing to a top level share.

      1. 1

        The various options given here for doing Sum Types represent a common complain about Go: the simplicity of the language makes the implementation of ideas more complicated. I think it’s very hard to argue that sum-types in Go, whether it be @jerf’s solution or Alan Pierece’s, are simpler to understand than sum-types in a language like Ocaml. So the author has a choice to make use of a concept that is clearly valuable but a relatively complicated implementation or not make use of it and solve the problem another way which is likely complicated as well.

        1. 2

          I generally agree with your assessment. I’d say that Go lacks first class Sum Types and this saddens me somewhat. In many ways I’d compare it to forcing Java users to jump through the hoops of anonymous inner classes instead of just providing first-class functions (though that’s not a perfect metaphor). Language feature orthogonality does not always make for the most immediately expressive or consistently readable language.