[Rprotobuf-commits] r686 - papers/rjournal

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Fri Jan 3 02:24:22 CET 2014


Author: murray
Date: 2014-01-03 02:24:22 +0100 (Fri, 03 Jan 2014)
New Revision: 686

Modified:
   papers/rjournal/RJwrapper.tex
   papers/rjournal/eddelbuettel-francois-stokely.Rnw
   papers/rjournal/eddelbuettel-francois-stokely.bib
Log:
Remove Romain from authors list per his request, add an
acknowledgements section which of course thanks him most of all.

Add a section on unsigned integers in the type coercion section, now
that they are handled better in RProtoBuf.

Add more text in the Descriptors subsection.

Add references to int64 (orphaned but still useful) and bit64 in the
64-bit integers subsection.



Modified: papers/rjournal/RJwrapper.tex
===================================================================
--- papers/rjournal/RJwrapper.tex	2014-01-01 07:02:20 UTC (rev 685)
+++ papers/rjournal/RJwrapper.tex	2014-01-03 01:24:22 UTC (rev 686)
@@ -4,6 +4,7 @@
 \usepackage{RJournal}
 \usepackage{amsmath,amssymb,array}
 \usepackage{booktabs}
+\usepackage{tabularx}
 
 %% load any required packages here
 

Modified: papers/rjournal/eddelbuettel-francois-stokely.Rnw
===================================================================
--- papers/rjournal/eddelbuettel-francois-stokely.Rnw	2014-01-01 07:02:20 UTC (rev 685)
+++ papers/rjournal/eddelbuettel-francois-stokely.Rnw	2014-01-03 01:24:22 UTC (rev 686)
@@ -9,7 +9,7 @@
 \renewenvironment{Schunk}{\vspace{\topsep}}{\vspace{\topsep}}
 
 \title{RProtoBuf: Efficient Cross-Language Data Serialization in R}
-\author{by Dirk Eddelbuettel, Romain Fran\c{c}ois, and Murray Stokely}
+\author{by Dirk Eddelbuettel and Murray Stokely}
 
 %% DE: I tend to have wider option(width=...) so this
 %%     guarantees better line breaks
@@ -540,12 +540,20 @@
 
 \subsection{Descriptors}
 
-Message descriptors are represented in R with the \emph{Descriptor} S4
+Descriptors describe the type of a Message.  This includes what fields
+a message contains and what the types of those fields are.  Message
+descriptors are represented in R with the \emph{Descriptor} S4
 class. The class contains the slots \texttt{pointer} and
 \texttt{type}.  Similarly to messages, the \verb|$| operator can be
 used to retrieve descriptors that are contained in the descriptor, or
 invoke pseudo-methods.
 
+When \CRANpkg{RProtoBuf} is first loaded it calls
+\texttt{readProtoFiles} to read in an example \texttt{.proto} file
+included with the package.  The \texttt{tutorial.Person} descriptor
+and any other descriptors defined in loaded \texttt{.proto} files are
+then available on the search path.
+
 <<>>=
 # field descriptor
 tutorial.Person$email
@@ -890,6 +898,23 @@
 try(a$optional_bool <- NA,silent=TRUE)
 @
 
+\subsection{Unsigned Integers}
+
+R lacks a native unsigned integer type.  Values between $2^{31}$ and
+$2^{32} - 1$ read from unsigned int protocol buffer fields must be
+stored as doubles in R.
+
+<<>>=
+as.integer(2^31-1)
+<<eval=F>>=
+as.integer(2^31 - 1) + as.integer(1)
+<<echo=FALSE,eval=TRUE,print=TRUE>>=
+try(as.integer(2^31 - 1) + as.integer(1))
+
+2^31
+class(2^31)
+@
+
 \subsection{64-bit integers}
 \label{sec:int64}
 
@@ -936,7 +961,10 @@
 When reading the value back into 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
-to \texttt{TRUE}.
+to \texttt{TRUE}.  The character values are useful because they can
+accurately be used as unique identifiers and can easily be passed to R
+packages such as \CRANpkg{int64} \citep{int64} or \CRANpkg{bit64}
+\citep{bit64} which represent 64-bit integers in R.
 
 <<>>=
 options("RProtoBuf.int64AsString" = FALSE)
@@ -1211,6 +1239,24 @@
 
 %This file is only a basic article template. For full details of \emph{The R Journal} style and information on how to prepare your article for submission, see the \href{http://journal.r-project.org/latex/RJauthorguide.pdf}{Instructions for Authors}.
 
+\section{Acknowledgement}
+
+\CRANpkg{RProtoBuf} was originally written in 2009 by Romain
+Fran\c{c}ois and Dirk Eddelbuettel.  The authors would particularly
+like to thank Romain for his initial implementation and continued
+design discussions. Several features of this package are based
+on the design of the \CRANpkg{rJava} package by Simon Urbanek
+(dispatch on new, S4 class structures using external pointers). We'd
+like to thank Simon for his indirect involvment on
+\CRANpkg{RProtoBuf}.  The user defined table mechanism, implemented by
+Duncan Temple Lang for the purpose of the \pkg{RObjectTables}
+package allowed the dynamic symbol lookup. Many thanks to Duncan for
+this amazing feature.  Kenton Varda was generous with his time in
+reviewing code and explaining obscure protocol buffer semantics.  Karl
+Millar and Jeroen Ooms were helpful in reviewing code or offering
+suggestions.  Saptarshi Guha's contemporaneous work on \pkg{RHIPE} was a
+strong motivator.
+
 \bibliography{eddelbuettel-francois-stokely}
 
 \address{Dirk Eddelbuettel\\
@@ -1219,12 +1265,6 @@
   USA}
 \email{edd at debian.org}
 
-\address{Author Two\\
-  Affiliation\\
-  Address\\
-  Country}
-\email{author2 at work}
-
 \address{Murray Stokely\\
   Google, Inc.\\
   1600 Amphitheatre Parkway\\

Modified: papers/rjournal/eddelbuettel-francois-stokely.bib
===================================================================
--- papers/rjournal/eddelbuettel-francois-stokely.bib	2014-01-01 07:02:20 UTC (rev 685)
+++ papers/rjournal/eddelbuettel-francois-stokely.bib	2014-01-03 01:24:22 UTC (rev 686)
@@ -7,6 +7,20 @@
   pages={1--18},
   year={2011}
 }
+ at Manual{int64,
+  title = {int64: 64 bit integer types},
+  author = {Romain Francois},
+  year = {2011},
+  note = {R package version 1.1.2},
+  url = {http://CRAN.R-project.org/package=int64},
+}
+ at Manual{bit64,
+  title = {bit64: A S3 class for vectors of 64bit integers},
+  author = {Jens Oehlschlägel},
+  year = {2012},
+  note = {R package version 0.9-3},
+  url = {http://CRAN.R-project.org/package=bit64},
+}
 @book{eddelbuettel2013seamless,
   title={Seamless R and C++ Integration with Rcpp},
   author={Eddelbuettel, Dirk},



More information about the Rprotobuf-commits mailing list