Jugendhackt / haskell-ricochet

(WIP/Experimental) Ricochet implementation as Haskell Library.
GNU General Public License v3.0
22 stars 0 forks source link

Decide which protocol buffers implementation to use #1

Closed photm5 closed 9 years ago

photm5 commented 9 years ago

The protocol we’ll implement does a lot of serialization using google’s protocol buffers. The protobuf package enables us to generate haskell code that does the parsing and dumping.

photm5 commented 9 years ago

There’s also protobuf-native (Makes use of C++ code generated by the official generator, probably by just creating bindings to it) and protocol-buffers. The protobuf package seems to implement a DSL in Haskell, and there might be a “converter” that generates readable code in this DSL. We’ll need to decide.

photm5 commented 9 years ago

I just read two blog posts of the author of protobuf. He states that protocol-buffers is a stable and useful library, and explains how his approach is different: He doesn’t generate haskell code from protocol buffer specifications, but instead generates protocol buffer specifications from haskell code. I’m not sure how useful this would be to us, as we want to use a predefined spec.

photm5 commented 9 years ago

I decided in favor of protocol-buffers, as it seems the most stable. Also, there is a tool called hprotoc that allows compilation of .proto specs to Haskell modules.