[Rcpp-commits] r4108 - in pkg/Rcpp: . inst

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Thu Dec 6 14:55:31 CET 2012


Author: jjallaire
Date: 2012-12-06 14:55:31 +0100 (Thu, 06 Dec 2012)
New Revision: 4108

Modified:
   pkg/Rcpp/ChangeLog
   pkg/Rcpp/inst/NEWS.Rd
Log:
set svn:eol-style native on ChangeLog and NEWS.Rd


Property changes on: pkg/Rcpp/ChangeLog
___________________________________________________________________
Added: svn:eol-style
   + native

Modified: pkg/Rcpp/inst/NEWS.Rd
===================================================================
--- pkg/Rcpp/inst/NEWS.Rd	2012-12-06 13:49:18 UTC (rev 4107)
+++ pkg/Rcpp/inst/NEWS.Rd	2012-12-06 13:55:31 UTC (rev 4108)
@@ -1,1115 +1,1115 @@
-\name{NEWS}
-\title{News for Package 'Rcpp'}
-\newcommand{\cpkg}{\href{http://CRAN.R-project.org/package=#1}{\pkg{#1}}}
-
-\section{Changes in Rcpp version 0.10.2 (future)}{
-  \itemize{
-    \item Changes in Rcpp API:
-    \itemize{
-      \item Added additional check in \code{Rstreambuf} deletetion
-      \item Added support for \code{clang++} when using \code{libc++},
-      and for anc \code{icpc} in \code{std=c++11} mode, thanks to a
-      patch by Yan Zhou
-      \item New class \code{Rcpp::String} to facilitate working with a single
-      element of a character vector
-      \item utility class sugar::IndexHash inspired from Simon Urbanek's fastmatch
-      package
-    }
-    \item Changes in Rcpp sugar:
-    \itemize{
-        \item More efficient version of \code{match} based on \code{IndexHash}
-        \item More efficient version of \code{unique} base on \code{IndexHash}
-        \item More efficient version of \code{in} base on \code{IndexHash}
-        \item More efficient version of \code{duplicated} base on \code{IndexHash}
-        \item More efficient version of \code{self_match} base on \code{IndexHash}
-    }
-    \item Changes in Rcpp attributes: 
-        \itemize{
-            \item Use code generation rather than modules to implement
-            \code{sourceCpp} and \code{compileAttributes} (eliminates 
-            problem with exceptions not being able to cross shared library
-            boundaries on Windows)
-            \item Functions exported by \code{sourceCpp} now directly
-            hookup to the external symbol pointer
-            \item Diagnostics are printed to the console if \code{sourceCpp}
-            fails and R development tools are not installed
-        }
-  }
-}
-
-\section{Changes in Rcpp version 0.10.1 (2012-11-26)}{
-    \itemize{
-        \item Changes in Rcpp sugar: 
-        \itemize{
-          \item New functions: \code{setdiff}, \code{union_}, \code{intersect}
-            \code{setequal}, \code{in}, \code{min}, \code{max}, \code{range}, 
-            \code{match}, \code{table}, \code{duplicated}
-          \item New function: \code{clamp} which combines pmin and pmax, e.g. 
-          clamp( a, x, b) is the same as pmax( b, pmin(x, a) )
-          \item New function: \code{self_match} which implements something 
-          similar to \code{match( x, unique( x ) )}
-        }
-        \item Changes in Rcpp API:
-        \itemize{
-            \item The \code{Vector} template class (hence \code{NumericVector}
-            ...) get the \code{is_na} and the \code{get_na} static methods.
-            \item New helper class \code{no_init} that can be used to 
-            create a vector without initializing its data, e.g. : 
-            \code{ IntegerVector out = no_init(n) ; }
-            \item New exception constructor requiring only a message; \code{stop}
-            function to throw an exception
-            \item \code{DataFrame} gains a \code{nrows} method  
-        }
-        \item Changes in Rcpp attributes: 
-        \itemize{
-            \item Ability to embed R code chunks (via specially formatted
-            block comments) in C++ source files.
-            \item Allow specification of argument defaults for exported functions. 
-            \item New scheme for more flexible mixing of generated and user composed
-            C++ headers.
-            \item Print warning if no export attributes are found in source file.
-            \item Updated vignette with additional documentation on exposing
-            C++ interfaces from packages and signaling errors.
-        }
-        \item Changes in Rcpp modules: 
-        \itemize{
-            \item Enclose .External invocations in \code{BEGIN_RCPP}/\code{END_RCPP}
-        }
-        \item Changes in R code :
-        \itemize{
-            \item New function \code{areMacrosDefined}    
-             \item Additions to \code{Rcpp.package.skeleton}:
-             \itemize{
-                \item \code{attributes} parameter to generate a version of 
-            	\code{rcpp_hello_world} that uses \code{Rcpp::export}.
-            	\item \code{cpp_files} parameter to provide a list of C++
-            	files to include the in the \code{src} directory of the package.
-            }
-        }
-        \item Miscellaneous changes:
-        \itemize{
-          \item New example 'pi simulation' using R and C++ via Rcpp attributes
-	}
-    }
-}
-\section{Changes in Rcpp version 0.10.0 (2012-11-13)}{
-  \itemize{
-    \item Support for C++11 style attributes (embedded in comments) to enable
-    use of C++ within interactive sessions and to automatically generate module
-    declarations for packages:
-    \itemize{
-        \item Rcpp::export attribute to export a C++ function to R
-        \item \code{sourceCpp()} function to source exported functions from a file
-        \item \code{cppFunction()} and \code{evalCpp()} functions for inline declarations 
-        and execution
-        \item \code{compileAttribtes()} function to generate Rcpp modules from 
-        exported functions within a package
-        \item Rcpp::depends attribute for specifying additional build 
-        dependencies for \code{sourceCpp()}
-        \item Rcpp::interfaces attribute to specify the external bindings
-        \code{compileAttributes()} should generate (defaults to R-only but a  
-        C++ include file using R_GetCCallable can also be generated)
-	\item New vignette "Rcpp-attribute" 
-    }
-    \item Rcpp modules feature set has been expanded:
-    \itemize{
-        \item Functions and methods can now return objects from classes that 
-        are exposed through modules. This uses the make_new_object template
-        internally. This feature requires that some class traits are declared
-        to indicate Rcpp's \code{wrap}/\code{as} system that these classes are covered 
-        by modules. The macro RCPP_EXPOSED_CLASS and RCPP_EXPOSED_CLASS_NODECL
-        can be used to declared these type traits. 
-        \item Classes exposed through modules can also be used as parameters
-        of exposed functions or methods. 
-        \item Exposed classes can declare factories with ".factory". A factory 
-        is a c++ function that returns a pointer to the target class. It is 
-        assumed that these objects are allocated with new on the factory. On the 
-        R side, factories are called just like other constructors, with the 
-        "new" function. This feature allows an alternative way to construct
-        objects. 
-        \item "converter" can be used to declare a way to convert an object
-        of a type to another type. This gets translated to the appropriate
-        "as" method on the R side. 
-        \item Inheritance. A class can now declare that it inherits from 
-        another class with the .derives<Parent>( "Parent" ) notation. As a result
-        the exposed class gains methods and properties (fields) from its
-        parent class. 
-    }
-    \item New sugar functions: 
-    \itemize{
-        \item \code{which_min} implements which.min. Traversing the sugar expression
-        and returning the index of the first time the minimum value is found. 
-        \item \code{which_max} idem
-        \item \code{unique} uses unordered_set to find unique values. In particular, 
-        the version for CharacterVector is found to be more efficient than 
-        R's version
-        \item \code{sort_unique} calculates unique values and then sorts them. 
-    }
-    \item Improvements to output facilities:
-    \itemize{
-      \item Implemented \code{sync()} so that flushing output streams works
-      \item Added \code{Rcerr} output stream (forwarding to
-      \code{REprintf})
-    }
-    \item Provide a namespace 'R' for the standalone Rmath library so
-    that Rcpp users can access those functions too; also added unit tests 
-    \item Development releases sets variable RunAllRcppTests to yes to
-    run all tests (unless it was alredy set to 'no'); CRAN releases do
-    not and still require setting -- which helps with the desired CRAN
-    default of less testing at the CRAN server farm.
-  }
-}
-
-\section{Changes in Rcpp version 0.9.15 (2012-10-13)}{
-  \itemize{
-    \item Untangling the clang++ build issue about the location of the
-    exceptions header by directly checking for the include file -- an
-    approach provided by Martin Morgan in a kindly contributed patch
-    as unit tests for them.
-    \item The \code{Date} and \code{Datetime} types now correctly
-    handle \code{NA}, \code{NaN} and \code{Inf} representation; the
-    \code{Date} type switched to an internal representation via \code{double}
-    \item Added \code{Date} and \code{Datetime} unit tests for the new
-    features
-    \item An additional \code{PROTECT} was added for parsing exception
-    messages before returning them to R, following a report by Ben North
-  }
-}
-
-\section{Changes in Rcpp version 0.9.14 (2012-09-30)}{
-  \itemize{
-    \item Added new Rcpp sugar functions trunc(), round() and signif(), as well
-    as unit tests for them
-    \item Be more conservative about where we support clang++ and the inclusion
-    of exception_defines.h and prevent this from being attempted on OS X
-    where it failed for clang 3.1
-    \item Corrected a typo in Module.h which now again permits use of finalizers
-    \item Small correction for (unexported) bib() function (which provides a path
-    to the bibtex file that ships with Rcpp)
-    \item Converted NEWS to NEWS.Rd
-  }
-}
-\section{Changes in Rcpp version 0.9.13 (2012-06-28)}{
-  \itemize{
-    \item Truly corrected Rcpp::Environment class by having default constructor
-             use the global environment, and removing the default argument of
-             global environment from the SEXP constructor
-    \item Added tests for clang++ version to include bits/exception_defines.h
-             for versions 3.0 or higher (similar to g++ 4.6.0 or later), needed to
-      include one particular exceptions header
-    \item Made more regression tests conditional on the RunAllRcppTests to come
-             closer to the CRAN mandate of running tests in sixty seconds
-    \item Updated unit test wrapper tests/doRUnit.R as well as unitTests/runTests.R
-  }
-}
-\section{Changes in Rcpp version 0.9.12 (2012-06-23)}{
-  \itemize{
-    \item Corrected Rcpp::Environment class by removing (empty) ctor following
-             rev3592 (on May 2) where default argument for ctor was moved
-    \item Unit testing now checks for environment variable RunAllRcppTests being
-             set to "yes"; otherwise some tests are skipped. This is arguably not
-             the right thing to do, but CRAN maintainers insist on faster tests.
-    \item Unit test wrapper script runTests.R has new option --allTests to set
-             the environment variable
-    \item The cleanup script now also considers inst/unitTests/testRcppClass/src 
-  }
-}
-\section{Changes in Rcpp version 0.9.11 (2012-06-22)}{
-  \itemize{
-    \item New member function for vectors (and lists etc) containsElementNamed() 
-             which returns a boolean indicating if the given element name is present
-    \item Updated the Rcpp.package.skeleton() support for Rcpp modules by
-             carrying functions already present from the corresponding unit test
-      which was also slightly expanded; and added more comments to the code 
-    \item Rcpp modules can now be loaded via loadRcppModules() from .onLoad(),
-             or via loadModule("moduleName") from any R file 
-    \item Extended functionality to let R modify C++ clases imported via modules
-             documented in help(setRcppClass)
-    \item Support compilation in Cygwin thanks to a patch by Dario Buttari
-    \item Extensions to the Rcpp-FAQ and the Rcpp-modules vignettes
-    \item The minium version of R is now 2.15.1 which is required for some of
-             the Rcpp modules support 
-  }
-}
-\section{Changes in Rcpp version 0.9.10 (2012-02-16)}{
-  \itemize{
-    \item Rearrange headers so that Rcpp::Rcout can be used by RcppArmadillo et al
-    \item New Rcpp sugar function mapply (limited to two or three input vectors)
-    \item Added custom version of the Rcpp sugar diff function for numeric vectors
-             skipping unncesserry checks for NA
-    \item Some internal code changes to reflect changes and stricter requirements
-             in R CMD check in the current R-devel versions
-    \item Corrected fixed-value initialization for IntegerVector (with thanks to
-             Gregor Kastner for spotting this)
-    \item New Rcpp-FAQ entry on simple way to set compiler option for cxxfunction
-  }
-}
-\section{Changes in Rcpp version 0.9.9 (2012-12-25)}{
-  \itemize{
-    \item Reverting the 'int64' changes from release 0.9.8 which adversely
-         	affect packages using Rcpp: We will re-apply the 'int64' changes in a 
-      way which should cooperate more easily with 'long' and 'unsigned long'.
-    \item Unit test output directory fallback changed to use Rcpp.Rcheck
-    \item Conditioned two unit tests to not run on Windows where they now break
-             whereas they passed before, and continue to pass on other OSs
-  }
-}
-\section{Changes in Rcpp version 0.9.8 (2011-12-21)}{
-  \itemize{
-    \item wrap now handles 64 bit integers (int64_t, uint64_t) and containers 
-             of them, and Rcpp now depends on the int64 package (also on CRAN).
-             This work has been sponsored by the Google Open Source Programs
-             Office.
-    \item Added setRcppClass() function to create extended reference classes 
-             with an interface to a C++ class (typically via Rcpp Module) which
-      can have R-based fields and methods in addition to those from the C++.
-    \item Applied patch by Jelmer Ypma which adds an output stream class
-         	'Rcout' not unlike std::cout, but implemented via Rprintf to
-         	cooperate with R and its output buffering.
-    \item New unit tests for pf(), pnf(), pchisq(), pnchisq() and pcauchy()
-    \item XPtr constructor now checks for corresponding type in SEXP
-    \item Updated vignettes for use with updated highlight package
-    \item Update linking command for older fastLm() example using external 
-             Armadillo
-  }
-}
-\section{Changes in Rcpp version 0.9.7 (2011-09-29)}{
-  \itemize{
-    \item Applied two patches kindly provided by Martyn Plummer which provide
-         	support for compilation on Solaris using the SunPro compiler
-    \item Minor code reorganisation in which exception specifiers are removed;
-             this effectively only implements a run-time (rather than compile-time) 
-             check and is generally seen as a somewhat depreated C++ idiom. Thanks
-             to Darren Cook for alerting us to this issue.
-    \item New example 'OpenMPandInline.r' in the OpenMP/ directory, showing how
-             easily use OpenMP by modifying the RcppPlugin output
-    \item New example 'ifelseLooped.r' showing Rcpp can accelerate loops that may
-      be difficult to vectorise due to dependencies
-    \item New example directory examples/Misc/ regrouping the new example as
-             well as the fibonacci example added in Rcpp 0.9.6
-    \item New Rcpp-FAQ example warning of lossy conversion from 64-bit long
-             integer types into a 53-bit mantissa which has no clear fix yet.
-    \item New unit test for accessing a non-exported function from a namespace
-  }
-}
-\section{Changes in Rcpp version 0.9.6 (2011-07-26)}{
-  \itemize{
-    \item Added helper traits to facilitate implementation of the RcppEigen
-      package: The is_eigen_base traits identifies if a class derives from
-      EigenBase using SFINAE; and new dispatch layer was added to wrap() to
-      help RcppEigen
-    \item XPtr now accepts a second template parameter, which is a function
-             taking a pointer to the target class. This allows the developper to
-             supply his/her own finalizer. The template parameter has a default
-             value which retains the original behaviour (calling delete on the
-             pointer)
-    \item New example RcppGibbs, extending Sanjog Misra's Rcpp illustration of
-             Darren Wilkinson's comparison of MCMC Gibbs Sampler implementations;
-      also added short timing on Normal and Gaussian RNG draws between Rcpp
-      and GSL as R's rgamma() is seen to significantly slower
-    \item New example on recursively computing a Fibonacci number using Rcpp and
-             comparing this to R and byte-compiled R for a significant speed gain
-  }
-}
-\section{Changes in Rcpp version 0.9.5 (2011-07-05)}{
-  \itemize{
-    \item New Rcpp-FAQ examples on using the plugin maker for inline's
-             cxxfunction(), and on setting row and column names for matrices
-    \item New sugar functions: mean, var, sd
-    \item Minor correction and extension to STL documentation in Rcpp-quickref
-    \item wrap() is now resilient to NULL pointers passed as in const char *
-    \item loadRcppModules() gains a "direct" argument to expose the module instead
-             of exposing what is inside it
-    \item Suppress a spurious warning from R CMD check on packages created with
-             Rcpp.package.skeleton(..., module=TRUE)
-    \item Some fixes and improvements for Rcpp sugar function 'rlnorm()'
-    \item Beginnings of new example using OpenMP and recognising user interrupts
-  }
-}
-\section{Changes in Rcpp version 0.9.4 (2011-04-12)}{
-  \itemize{
-    \item New R function "loadRcppModules" to load Rcpp modules automatically
-             from a package. This function must be called from the .onLoad function
-             and works with the "RcppModules" field of the package's DESCRIPTION file
-    \item The Modules example wrapped the STL std::vector received some editing
-             to disambiguate some symbols the newer compilers did not like
-    \item Coercing of vectors of factors is now done with an explicit callback
-             to R's "as.character()" as Rf_coerceVector no longer plays along
-    \item A CITATION file for the published JSS paper has been added, and 
-             references were added to Rcpp-package.Rd and the different vignettes
-  }
-}
-\section{Changes in Rcpp version 0.9.3 (2011-04-05)}{
-  \itemize{
-    \item Fixed a bug in which modules code was not behaving when compiled 
-             twice as can easily happen with inline'ed version
-    \item Exceptions code includes exception_defines.h only when g++ is 4.5 or
-             younger as the file no longer exists with g++-4.6
-    \item The documentation Makefile now uses the $R_HOME environment variable
-    \item The documentation Makefile no longer calls clean in the all target
-    \item C++ conformance issue found by clang/llvm addressed by re-ordering
-             declarations in grow.h as unqualified names must be declared before
-             they are used, even when used within templates
-    \item The 'long long' typedef now depends on C++0x being enabled as this
-             was not a feature in C++98; this suppresses a new g++-4.5 warning
-    \item The Rcpp-introduction vignette was updated to the forthcoming JSS paper
-  }
-}
-\section{Changes in Rcpp version 0.9.2 (2011-02-23)}{
-  \itemize{
-    \item The unitTest runit.Module.client.package.R is now skipped on older OS
-             X releases as it triggers a bug with g++ 4.2.1 or older; OS X 10.6 is
-             fine but as it no longer support ppc we try to accomodate 10.5 too
-             Thanks to Simon Urbanek for pinning this down and Baptiste Auguie
-             and Ken Williams for additonal testing 
-    \item RcppCommon.h now recognises the Intel Compiler thanks to a short
-             patch by Alexey Stukalov; this turns off Cxx0x and TR1 features too
-    \item Three more setup questions were added to the Rcpp-FAQ vignette
-    \item One question about RcppArmadillo was added to the Rcpp-FAQ vignette
-  }
-}
-\section{Changes in Rcpp version 0.9.1 (2011-02-14)}{
-  \itemize{
-    \item A number of internal changes to the memory allocation / protection of
-             temporary objects were made---with a heartfelt "Thank You!" to both
-             Doug Bates for very persistent debugging of Rcpp modules code, and to
-             Luke Tierney who added additional memory allocation debugging tools
-             to R-devel (which will be in R 2.13.0 and may also be in R 2.12.2)
-    \item Removed another GNU Make-specific variable from src/Makevars in order
-             to make the build more portable; this was noticed on FreeBSD
-    \item On *BSD, do not try to compute a stack trace but provide file and
-             line number (which is the same behaviour as implemented in Windows)
-    \item Fixed an int conversion bug reported by Daniel Sabanes Bove on r-devel,
-             added unit test as well
-    \item Added unit tests for complex-typed vectors (thanks to Christian Gunning)
-    \item Expanded the Rcpp-quickref vignette (with thanks to Christian Gunning)
-    \item Additional examples were added to the Rcpp-FAQ vignette
-  }
-}
-\section{Changes in Rcpp version 0.9.0 (2010-12-19)}{
-  \itemize{
-    \item The classic API was factored out into its own package RcppClassic which
-             is released concurrently with this version.
-    \item If an object is created but not initialized, attempting to use
-             it now gives a more sensible error message (by forwarding an
-             Rcpp::not_initialized exception to R).
-    \item SubMatrix fixed, and Matrix types now have a nested ::Sub typedef.
-    \item New unexported function SHLIB() to aid in creating a shared library on
-             the command-line or in Makefile (similar to CxxFlags() / LdFlags()).
-    \item Module gets a seven-argument ctor thanks to a patch from Tama Ma.
-    \item The (still incomplete) QuickRef vignette has grown thanks to a patch
-             by Christian Gunning.
-    \item Added a sprintf template intended for logging and error messages.
-    \item Date::getYear() corrected (where addition of 1900 was not called for); 
-             corresponding change in constructor from three ints made as well.
-    \item Date() and Datetime() constructors from string received a missing
-             conversion to int and double following strptime. The default format
-             string for the Datetime() strptime call was also corrected.
-    \item A few minor fixes throughout, see ChangeLog.
-  }
-}
-\section{Changes in Rcpp version 0.8.9 (2010-11-27)}{
-  \itemize{
-    \item Many improvements were made in 'Rcpp modules':
-             - exposing multiple constructors
-             - overloaded methods
-             - self-documentation of classes, methods, constructors, fields and 
-               functions.
-             - new R function "populate" to facilitate working with modules in 
-               packages. 
-             - formal argument specification of functions.
-             - updated support for Rcpp.package.skeleton.
-             - constructors can now take many more arguments.
-    \item The 'Rcpp-modules' vignette was updated as well and describe many
-             of the new features
-    \item New template class Rcpp::SubMatrix<RTYPE> and support syntax in Matrix
-             to extract a submatrix: 
-                NumericMatrix x = ... ;
-                // extract the first three columns
-                SubMatrix<REALSXP> y = x( _ , Range(0,2) ) ; 
-                // extract the first three rows
-                SubMatrix<REALSXP> y = x( Range(0,2), _ ) ; 
-                // extract the top 3x3 sub matrix
-                SubMatrix<REALSXP> y = x( Range(0,2), Range(0,2) ) ; 
-    \item Reference Classes no longer require a default constructor for
-             subclasses of C++ classes    
-    \item Consistently revert to using backticks rather than shell expansion
-             to compute library file location when building packages against Rcpp
-      on the default platforms; this has been applied to internal test
-             packages as well as CRAN/BioC packages using Rcpp
-  }
-}
-\section{Changes in Rcpp version 0.8.8 (2010-11-01)}{
-  \itemize{
-    \item New syntactic shortcut to extract rows and columns of a Matrix. 
-             x(i,_) extracts the i-th row and x(_,i) extracts the i-th column. 
-    \item Matrix indexing is more efficient. However, faster indexing is
-             disabled if g++ 4.5.0 or later is used.
-    \item A few new Rcpp operators such as cumsum, operator=(sugar)
-    \item Variety of bug fixes:
-             - column indexing was incorrect in some cases
-             - compilation using clang/llvm (thanks to Karl Millar for the patch)
-      - instantation order of Module corrected
-             - POSIXct, POSIXt now correctly ordered for R 2.12.0 
-  }
-}
-\section{Changes in Rcpp version 0.8.7 (2010-10-15)}{
-  \itemize{
-    \item As of this version, Rcpp depends on R 2.12 or greater as it interfaces
-             the new reference classes (see below) and also reflects the POSIXt
-             class reordering both of which appeared with R version 2.12.0
-    \item new Rcpp::Reference class, that allows internal manipulation of R
-             2.12.0 reference classes. The class exposes a constructor that takes
-             the name of the target reference class and a field(string) method
-             that implements the proxy pattern to get/set reference fields using
-             callbacks to the R operators "$" and "$<-" in order to preserve the
-             R-level encapsulation
-    \item the R side of the preceding item allows methods to be written in R as
-             per ?ReferenceClasses, accessing fields by name and assigning them
-             using "<<-".  Classes extracted from modules are R reference classes.
-             They can be subclassed in R, and/or R methods can be defined using
-             the $methods(...) mechanism.
-    \item internal performance improvements for Rcpp sugar as well as an added
-             'noNA()' wrapper to omit tests for NA values -- see the included
-             examples in inst/examples/convolveBenchmarks for the speedups
-    \item more internal performance gains with Functions and Environments
-  }
-}
-\section{Changes in Rcpp version 0.8.6 (2010-09-09)}{
-  \itemize{
-    \item new macro RCPP_VERSION and Rcpp_Version to allow conditional compiling
-             based on the version of Rcpp
-                #if defined(RCPP_VERSION) && RCPP_VERSION >= Rcpp_Version(0,8,6)
-                #endif
-    \item new sugar functions for statistical distributions (d-p-q-r functions)
-      with distributions : unif, norm, gamma, chisq, lnorm, weibull, logis,
-      f, pois, binom, t, beta.
-    \item new ctor for Vector taking size and function pointer so that for example
-         	   NumericVector( 10, norm_rand )
-      generates a N(0,1) vector of size 10
-    \item added binary operators for complex numbers, as well as sugar support 
-    \item more sugar math functions: sqrt, log, log10, exp, sin, cos, ...
-    \item started new vignette Rcpp-quickref : quick reference guide of Rcpp API
-             (still work in progress)
-    \item various patches to comply with solaris/suncc stricter standards
-    \item minor enhancements to ConvolutionBenchmark example
-    \item simplified src/Makefile to no longer require GNU make; packages using
-             Rcpp still do for the compile-time test of library locations
-  }
-}
-\section{Changes in Rcpp version 0.8.5 (2010-07-25)}{
-  \itemize{
-    \item speed improvements. Vector::names, RObject::slot have been improved
-             to take advantage of R API functions instead of callbacks to R
-    \item Some small updates to the Rd-based documentation which now points to 
-             content in the vignettes.  Also a small formatting change to suppress
-      a warning from the development version of R.
-    \item Minor changes to Date() code which may reenable SunStudio builds
-  }
-}
-\section{Changes in Rcpp version 0.8.4 (2010-07-09)}{
-  \itemize{
-    \item new sugar vector functions: rep, rep_len, rep_each, rev, head, tail,
-      diag
-    \item sugar has been extended to matrices: The Matrix class now extends the 
-         	Matrix_Base template that implements CRTP. Currently sugar functions 
-         	for matrices are: outer, col, row, lower_tri, upper_tri, diag
-    \item The unit tests have been reorganised into fewer files with one call
-      	each to cxxfunction() (covering multiple tests) resulting in a
-      	significant speedup
-    \item The Date class now uses the same mktime() replacement that R uses
-             (based on original code from the timezone library by Arthur Olson)
-      permitting wide date ranges on all operating systems
-    \item The FastLM example has been updated, a new benchmark based on the
-             historical Longley data set has been added
-    \item RcppStringVector now uses std::vector<std::string> internally
-    \item setting the .Data slot of S4 objects did not work properly
-  }
-}
-\section{Changes in Rcpp version 0.8.3 (2010-06-27)}{
-  \itemize{
-    \item This release adds Rcpp sugar which brings (a subset of) the R syntax
-             into C++. This supports : 
-              - binary operators : <,>,<=,>=,==,!= between R vectors
-              - arithmetic operators: +,-,*,/ between compatible R vectors
-              - several functions that are similar to the R function of the same name:
-             abs, all, any, ceiling, diff, exp, ifelse, is_na, lapply, pmin, pmax, 
-             pow, sapply, seq_along, seq_len, sign
-             Simple examples :
-               // two numeric vector of the same size
-               NumericVector x ;
-               NumericVector y ;
-               NumericVector res = ifelse( x < y, x*x, -(y*y) ) ;
-               // sapply'ing a C++ function
-               double square( double x )\{ return x*x ; \}
-               NumericVector res = sapply( x, square ) ;
-             Rcpp sugar uses the technique of expression templates, pioneered by the 
-             Blitz++ library and used in many libraries (Boost::uBlas, Armadillo). 
-             Expression templates allow lazy evaluation of expressions, which 
-             coupled with inlining generates very efficient code, very closely 
-             approaching the performance of hand written loop code, and often
-             much more efficient than the equivalent (vectorized) R code.
-             Rcpp sugar is curently limited to vectors, future releases will 
-             include support for matrices with sugar functions such as outer, etc ...
-             Rcpp sugar is documented in the Rcpp-sugar vignette, which contains
-             implementation details.
-    \item New helper function so that "Rcpp?something" brings up Rcpp help
-    \item Rcpp Modules can now expose public data members
-    \item New classes Date, Datetime, DateVector and DatetimeVector with proper
-             'new' API integration such as as(), wrap(), iterators, ...
-    \item The so-called classic API headers have been moved to a subdirectory
-             classic/ This should not affect client-code as only Rcpp.h was ever
-             included.
-    \item RcppDate now has a constructor from SEXP as well
-    \item RcppDateVector and RcppDatetimeVector get constructors from int
-             and both const / non-const operator(int i) functions
-    \item New API class Rcpp::InternalFunction that can expose C++ functions
-         	to R without modules. The function is exposed as an S4 object of 
-         	class C++Function
-  }
-}
-\section{Changes in Rcpp version 0.8.2 (2010-06-09)}{
-  \itemize{
-    \item Bug-fix release for suncc compiler with thanks to Brian Ripley for
-             additional testing.
-  }
-}
-\section{Changes in Rcpp version 0.8.1 (2010-06-08)}{
-  \itemize{
-    \item This release adds Rcpp modules. An Rcpp module is a collection of
-             internal (C++) functions and classes that are exposed to R. This
-             functionality has been inspired by Boost.Python.
-             Modules are created internally using the RCPP_MODULE macro and
-             retrieved in the R side with the Module function. This is a preview 
-             release of the module functionality, which will keep improving until
-             the Rcpp 0.9.0 release. 
-             The new vignette "Rcpp-modules" documents the current feature set of
-             Rcpp modules.
-    \item The new vignette "Rcpp-package" details the steps involved in making a
-             package that uses Rcpp.
[TRUNCATED]

To get the complete diff run:
    svnlook diff /svnroot/rcpp -r 4108


More information about the Rcpp-commits mailing list