[R-pkg-devel] golang based package for R msgpack and websocket work (RMQ)
Jason E. Aten
j.e.aten at gmail.com
Sat Oct 24 18:31:21 CEST 2015
I've made a package for R that uses Go (golang), the compiled language
created by Rob Pike, Ken Thomson, Robert Griesemer, a team of Google
employees, and thousands of open source volunteer contributors. See
My package, called RMQ for "R messaging and queuing" provides msgpack
(supporting version 2 of msgpack) serialization and robust web-socket based
RPC. The existing package for msgpackR in CRAN is for the outdated msgpack
1 standard, and can be very slow for some inputs, crashing on others. RMQ
instead uses a highly optimized and compiled msgpack parsing library. RMQ
also incorporates a hardened and well-tested websocket webserver framework
from the Go world. The details of RMQ can be viewed at
I view this as cutting edge work. It demonstrates for the first time how to
integrate libraries written in Go with R.
Complimenting the great library support in R, there are a quite some number
of high quality libraries in Go; especially the networking, crypto, and
big-integer libraries. Realistic integration between Go and R only became
viable last month, with the release of Go1.5.1 that supports compiling Go
code into shared libraries and simplified package vendoring.
I don't know how viable it is to contribute RMQ (or any Go based package to
CRAN). If it is not too difficult, I would be willing to try. Go1.5.1
would need to be installed on all build hosts. I would be willing to help
setup an appropriate build environments if need be.
In summary, my question is: is it viable to add RMQ to CRAN?
Thank you for your thoughts!
[[alternative HTML version deleted]]
More information about the R-package-devel