A Blog about Software Development. Software development is the act of developing a software product.

Wednesday, January 9, 2008

More on the AMQP (RabbitMQ) haskell client (and an example)

I am building a AMQP client library to use along with some of the openbotlistprojects. The client library will need to be written in haskell and will be able to communicate with MQ servers like RabbitMQ. That is irrelevant because I am just wrapping my head around haskell networking.

The "Data.Binary" module is used here to have fully control over the size and endianess of all data sent across the network. There are several utilities for writing shorts, byte words, longs, 64 bit longs, etc.

Here is a data structure defined with the Binary.Put monad. Our task is write this data to the socket connection.

Yes, people would definitely be interested in your client, which would be useful for RabbitMQ. You might also get some feedback. Others have been looking at Haskell clients but you may be the first to actually build one ;-)

About Me

I am a software developer interested in a variety of different environments. I have worked with Geographic
Information Systems (GIS) and now works for a Financial Services firm.
You can find him IRC/freenode as blbrown. Berlin can be found in Atlanta, Georgia. Also see me on twitter.