Version 1.0.0 of Haskell "port" of Google Protocol-Buffers

Chris Kuklewicz haskell at list.mightyreason.com
Sat Nov 15 18:02:21 EST 2008


Hello one and all,

Amid much editing, my Haskell version of protocol-buffer is now
released at version 1.0.0.  This version supports the feaures of Google's 
version 2.0.2 including the new extensible options.

What is this for?  What does it do?  Why?

   It generates Haskell data types that can be converted back and forth to lazy 
ByteStrings that interoperate with Google's generated code in C++/Java/python.

   The data types are defined in a ".proto" text file which is translated into 
the target language.

   My code is a pure Haskell re-implementation of the Google code at
http://code.Google.com/apis/protocolbuffers/docs/overview.html
   which is "...a language-neutral, platform-neutral, extensible way of 
serializing structured data for use in communications protocols, data storage, 
and more."
   Google's project produces C++, Java, and Python code.  This one produces 
Haskell code.

Where is the code?

http://hackage.haskell.org/cgi-bin/hackage-scripts/package/protocol-buffers
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/protocol-buffers-descriptor 

http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hprotoc-1.0.0

And it needs to be build and installed in the above order.  The first is the 
support library (Text.ProtocolBuffers).  The second is the self-describing 
descriptor library (Text.DescriptorProtos[.Options]).  The third is the 
'hprotoc' executable which translates the ".proto" files into Haskell code. 
This works similarly to the "protoc" program from the original Google project.

Cheers,
   Chris


More information about the Libraries mailing list