RcppMsgPack: MessagePack Headers and Interface Functions for R

MessagePack, or MsgPack for short, or when referring to the implementation, is an efficient binary serialization format for exchanging data between different programming languages. The RcppMsgPack package provides R with both the MessagePack C++ header files, and the ability to access, create and alter MessagePack objects directly from R. The main driver functions of the R interface are two functions msgpack_pack and msgpack_unpack. The function msgpack_pack serializes R objects to a raw MessagePack message. The function msgpack_unpack de-serializes MessagePack messages back into R objects. Several helper functions are available to aid in processing and formatting data including msgpack_simplify, msgpack_format and msgpack_map.

Travers Ching , Dirk Eddelbuettel

Supplementary materials

Supplementary materials are available in addition to this article. It can be downloaded at RJ-2018-068.zip

CRAN packages used

mongolite, RProtoBuf, RcppRedis, RcppMsgPack, Rcpp, nanotime, httr, feather, data.table

CRAN Task Views implied by cited packages

HighPerformanceComputing, Databases, NumericalMathematics, Finance, WebTechnologies


Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".


For attribution, please cite this work as

Ching & Eddelbuettel, "The R Journal: RcppMsgPack: MessagePack Headers and Interface Functions for R", The R Journal, 2018

BibTeX citation

  author = {Ching, Travers and Eddelbuettel, Dirk},
  title = {The R Journal: RcppMsgPack: MessagePack Headers and Interface Functions for R},
  journal = {The R Journal},
  year = {2018},
  note = {https://doi.org/10.32614/RJ-2018-068},
  doi = {10.32614/RJ-2018-068},
  volume = {10},
  issue = {2},
  issn = {2073-4859},
  pages = {516-525}