[Rprotobuf-commits] r847 - papers/jss

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Thu Jan 23 19:59:09 CET 2014


Author: murray
Date: 2014-01-23 19:59:08 +0100 (Thu, 23 Jan 2014)
New Revision: 847

Modified:
   papers/jss/article.Rnw
Log:
Consistently use \CRANpkg for RProtoBuf and also use \code more.



Modified: papers/jss/article.Rnw
===================================================================
--- papers/jss/article.Rnw	2014-01-23 17:47:32 UTC (rev 846)
+++ papers/jss/article.Rnw	2014-01-23 18:59:08 UTC (rev 847)
@@ -30,7 +30,7 @@
 %% for pretty printing and a nice hypersummary also set:
 \Plainauthor{Dirk Eddelbuettel, Murray Stokely, Jeroen Ooms} %% comma-separated
 \Plaintitle{RProtoBuf: Efficient Cross-Language Data Serialization in R}
-\Shorttitle{\pkg{RProtoBuf}: Protocol Buffers in \proglang{R}} %% a short title (if necessary)
+\Shorttitle{\CRANpkg{RProtoBuf}: Protocol Buffers in \proglang{R}} %% a short title (if necessary)
 
 %% an abstract and keywords
 \Abstract{
@@ -509,7 +509,7 @@
 or every \texttt{.proto} file provided by a particular \proglang{R} package.
 
 After importing proto files, the corresponding message descriptors are
-available from the \texttt{RProtoBuf:DescriptorPool} environment in 
+available from the \code{RProtoBuf:DescriptorPool} environment in 
 the \proglang{R} search path.  This environment is implemented with the user
 defined tables framework from the \pkg{RObjectTables} package
 available from the OmegaHat project \citep{RObjectTables}.  Instead of
@@ -641,17 +641,17 @@
 
 \subsection{Parsing messages}
 
-The \texttt{RProtoBuf} package defines the \texttt{read} and
-\texttt{readASCII} functions to read messages from files, raw vectors,
-or arbitrary connections.  \texttt{read} expects to read the message
-payload from binary files or connections and \texttt{readASCII} parses
+The \CRANpkg{RProtoBuf} package defines the \code{read} and
+\code{readASCII} functions to read messages from files, raw vectors,
+or arbitrary connections.  \code{read} expects to read the message
+payload from binary files or connections and \code{readASCII} parses
 the human-readable ASCII output that is created with
 \code{as.character}.
 
 The binary representation of the message
 does not contain information that can be used to dynamically
 infer the message type, so we have to provide this information
-to the \texttt{read} function in the form of a descriptor:
+to the \code{read} function in the form of a descriptor:
 
 <<>>=
 msg <- read(tutorial.Person, tf1)
@@ -737,8 +737,8 @@
 Each method is wrapped individually which allows us to add user
 friendly custom error handling, type coercion, and performance
 improvements at the cost of a more verbose implementation.
-The \pkg{RProtoBuf} package in many ways motivated
-the development of \pkg{Rcpp} Modules \citep{eddelbuettel2013exposing},
+The \CRANpkg{RProtoBuf} package in many ways motivated
+the development of \CRANpkg{Rcpp} Modules \citep{eddelbuettel2013exposing},
 which provide a more concise way of wrapping \proglang{C++} functions and classes
 in a single entity.
 
@@ -750,7 +750,7 @@
 % grep RPB_ * | grep -v RPB_FUNCTION | grep METHOD|wc -l
 % 33
 
-The \texttt{RProtoBuf} package supports two forms for calling
+The \CRANpkg{RProtoBuf} package supports two forms for calling
 functions with these S4 classes:
 \begin{itemize}
 \item The functional dispatch mechanism of the the form
@@ -759,7 +759,7 @@
   \verb|object$method(arguments)|.
 \end{itemize}
 
-Additionally, \pkg{RProtoBuf} supports tab completion for all
+Additionally, \CRANpkg{RProtoBuf} supports tab completion for all
 classes.  Completion possibilities include pseudo-method names for all
 classes, plus \emph{dynamic dispatch} on names or types specific to a given
 object.  This functionality is implemented with the
@@ -1124,7 +1124,7 @@
 \end{small}
 \caption{\label{table-get-types}Correspondence between field type and
   \proglang{R} type retrieved by the extractors. Note that \proglang{R} lacks native
-  64-bit integers, so the \texttt{RProtoBuf.int64AsString} option is
+  64-bit integers, so the \code{RProtoBuf.int64AsString} option is
   available to return large integers as characters to avoid losing
   precision.  This option is described in Section~\ref{sec:int64}.}
 \end{table}
@@ -1213,7 +1213,7 @@
 
 When reading the value back into \proglang{R}, numeric types are returned by
 default, but when the full precision is required a character value
-will be returned if the \texttt{RProtoBuf.int64AsString} option is set
+will be returned if the \code{RProtoBuf.int64AsString} option is set
 to \texttt{TRUE}.  The character values are useful because they can
 accurately be used as unique identifiers and can easily be passed to \proglang{R}
 packages such as \CRANpkg{int64} \citep{int64} or \CRANpkg{bit64}
@@ -1235,7 +1235,7 @@
 \section[Converting R Data Structures into Protocol Buffers]{Converting \proglang{R} Data Structures into Protocol Buffers}
 \label{sec:evaluation}
 
-The previous sections discussed functionality in the \pkg{RProtoBuf} package
+The previous sections discussed functionality in the \CRANpkg{RProtoBuf} package
 for creating, manipulating, parsing, and serializing Protocol Buffer
 messages of a defined schema.  This is useful when there are
 pre-existing systems with defined schemas or significant software
@@ -1251,12 +1251,12 @@
 identical(iris, unserialize_pb(msg))
 @
 
-In order to accomplish this, \pkg{RProtoBuf} uses the same catch-all \texttt{proto}
+In order to accomplish this, \CRANpkg{RProtoBuf} uses the same catch-all \texttt{proto}
 schema used by \pkg{RHIPE} for exchanging \proglang{R} data with Hadoop \citep{rhipe}. This 
 schema, which we will refer to as \texttt{rexp.proto}, is printed in
 %appendix \ref{rexp.proto}.
 the appendix.
-The Protocol Buffer messages generated by \pkg{RProtoBuf} and
+The Protocol Buffer messages generated by \CRANpkg{RProtoBuf} and
 \pkg{RHIPE} are naturally compatible between the two systems because they use the 
 same schema. This shows the power of using a schema based cross-platform format such
 as Protocol Buffers: interoperability is achieved without effort or close coordination.
@@ -1359,11 +1359,11 @@
 in multiple languages instead of requiring other programs to parse the \proglang{R}
 serialization format. % \citep{serialization}.
 One takeaway from this table is that the universal \proglang{R} object schema
-included in \pkg{RProtoBuf} does not in general provide
+included in \CRANpkg{RProtoBuf} does not in general provide
 any significant saving in file size compared to the normal serialization
 mechanism in \proglang{R}.
 % redundant: which is seen as equally compact.
-The benefits of \pkg{RProtoBuf} accrue more naturally in applications where
+The benefits of \CRANpkg{RProtoBuf} accrue more naturally in applications where
 multiple programming languages are involved, or when a more concise
 application-specific schema has been defined.  The example in the next
 section satisfies both of these conditions.
@@ -1436,7 +1436,7 @@
 \end{tabular}
 }
 \caption{Serialization sizes for default serialization in \proglang{R} and
-  RProtoBuf for 50 \proglang{R} datasets.}
+  \CRANpkg{RProtoBuf} for 50 \proglang{R} datasets.}
 \label{tab:compression}
 \end{center}
 \end{table}
@@ -1488,8 +1488,8 @@
 share a schema of the histogram representation to coordinate
 effectively.
 
-The \pkg{HistogramTools} package \citep{histogramtools} enhances
-\pkg{RProtoBuf} by providing a concise schema for \proglang{R} histogram objects:
+The \CRANpkg{HistogramTools} package \citep{histogramtools} enhances
+\CRANpkg{RProtoBuf} by providing a concise schema for \proglang{R} histogram objects:
 
 \begin{example}
 package HistogramTools;
@@ -1550,7 +1550,7 @@
 hist
 [1] "message of type 'HistogramTools.HistogramState' with 3 fields set"
 
-# Convert to native \proglang{R} histogram object and plot
+# Convert to native R histogram object and plot
 plot(as.histogram(hist))
 \end{Code}
 
@@ -1604,7 +1604,7 @@
 function calls, and arguments/return values can be posted/retrieved
 using several data interchange formats, such as Protocol Buffers.  
 OpenCPU uses the \texttt{serialize\_pb} and \texttt{unserialize\_pb} functions
-from the \texttt{RProtoBuf} package to convert between \proglang{R} objects and protobuf
+from the \CRANpkg{RProtoBuf} package to convert between \proglang{R} objects and protobuf
 messages. Therefore, clients need the \texttt{rexp.proto} descriptor mentioned
 earlier to parse and generate protobuf messages when interacting with OpenCPU.
 
@@ -1750,13 +1750,13 @@
 applications and numerical computing.
 
 %% DE Re-ordering so that we end on RProtoBuf
-The \pkg{RProtoBuf} package builds on the Protocol Buffers \proglang{C++} library, 
+The \CRANpkg{RProtoBuf} package builds on the Protocol Buffers \proglang{C++} library, 
 and extends the \proglang{R} system with the ability to create, read,
 write, parse, and manipulate Protocol
-Buffer messages. \pkg{RProtoBuf} has been used extensively inside Google 
+Buffer messages. \CRANpkg{RProtoBuf} has been used extensively inside Google 
 for the past three years by statisticians, analysts, and software engineers.
 At the time of this writing there are over 300 active
-users of \pkg{RProtoBuf} using it to read data from and otherwise interact
+users of \CRANpkg{RProtoBuf} using it to read data from and otherwise interact
 with distributed systems written in \proglang{C++}, \proglang{Java}, \proglang{Python}, and 
 other languages. We hope that making Protocol Buffers available to the
 \proglang{R} community will contribute towards better software integration
@@ -1805,7 +1805,7 @@
 obscure protocol buffer semantics.  Karl Millar was very
 helpful in reviewing code and offering suggestions.  Saptarshi Guha's
 work on RHIPE and implementation of a universal message type for \proglang{R}
-language objects allowed us to add the \code{serialize_pb} and \code{unserialize\_pb}
+language objects allowed us to add the \code{serialize_pb} and \code{unserialize_pb}
 methods for turning arbitrary R objects into protocol buffers without
 a specialized pre-defined schema.
 
@@ -1818,7 +1818,7 @@
 \label{rexp.proto}
 
 Below a print of the \texttt{rexp.proto} schema (originally designed by \cite{rhipe})
-that is included with the \pkg{RProtoBuf} package and used by \texttt{serialize\_pb} and
+that is included with the \CRANpkg{RProtoBuf} package and used by \texttt{serialize\_pb} and
 \texttt{unserialize\_pb}.
 
 \begin{verbatim}



More information about the Rprotobuf-commits mailing list