Displaying 20 results from an estimated 62 matches for "cfunctions".
Did you mean:
functions
2012 Mar 17
1
how to pass 'raw' values with cfunction()?
I am having trouble handing "raw" data to a C function, using "cfunction", as demonstrated in the function and output pasted below. Can anyone suggest what I'm doing incorrectly? Thanks. Dan Kelley [Dalhousie University].
1. TEST FILE
library(inline)
code <- 'Rprintf("inside f(), b is 0X%x\\n", *b);'
f <-
2014 Oct 31
3
ScalarLogical and setAttrib
Is it expected that attributes set on a LGLSXP created by
ScalarLogical will apply to all future objects created by
ScalarLogical as well? For example: the 'test1' function below returns
FALSE and 'test2' returns FALSE with an attribute:
library(inline)
test1 <- cfunction(body = 'return ScalarLogical(0);')
test2 <- cfunction(body = '
SEXP success =
2013 Feb 01
1
Problem using raw vectors with inline cfunction
Hello,
>From what I understood from the documentation I found, when using the
inline cfunction with convention=".C",
R raw vectors should be given as unsigned char* to the C function.
But consider the following script:
library(inline)
testRaw <- cfunction(signature(raw='raw', len='integer')
, body='
int l = *len;
int i = 0;
2012 Nov 30
3
segfault debugging
Hello everybody,
I have written a script with two inline cfunctions. The script crashes from time to time with:
? ?*** caught segfault ***
? address 0x10, cause 'memory not mapped'
The crashs happen within R code after the cfunctions were executed. Nevertheless I think
that the pointers in my cfunctions are not used correctly.
I tried to find some example...
2019 Sep 15
2
REprintf could be caught by tryCatch(message)
Dear R-devel community,
There appears to be an inconsistency in R C API about the exceptions
that can be raised from C code.
Mapping of R C funs to corresponding R functions is as follows.
error -> stop
warning -> warning
REprintf -> message
Rprintf -> cat
Rprint/cat is of course not an exception, I listed it just for completeness.
The inconsistency I would like to report is
2019 Sep 15
2
[External] REprintf could be caught by tryCatch(message)
Thank you Luke for prompt reply.
Is it possible then to request a new function to R C API "message"
that would equivalent to R "message" function? Similarly as we now
have C "warning" and C "error" functions.
Best,
Jan
On Sun, Sep 15, 2019 at 5:25 PM Tierney, Luke <luke-tierney at uiowa.edu> wrote:
>
> On Sun, 15 Sep 2019, Jan Gorecki wrote:
2020 Jun 30
2
Build a R call at C level
Hi All,
I was reading the R extension manual section 5.11 ( Evaluating R expression
from C) and I tried to build a simple call to the sum function. Please see
below.
call_to_sum <- inline::cfunction(
language = "C",
sig = c(x = "SEXP"), body = "
SEXP e = PROTECT(lang2(install(\"sum\"), x));
SEXP ans = PROTECT(eval(e, R_GlobalEnv));
UNPROTECT(2);
return
2020 Jun 30
3
Build a R call at C level
On 6/30/20 1:06 PM, Jan Gorecki wrote:
> It is quite known that R documentation on R C api could be improved...
Please see "5.11 Evaluating R expressions from C" from "Writing R
Extensions"
Best
Tomas
> Still R-package-devel mailing list should be preferred for this kind
> of questions.
> Not sure if that is the best way, but works.
>
> call_to_sum <-
2010 Apr 13
3
Inline Package: void vs return type functions
Dear all,
After having a look at the "inline" package and also going through the
"Rcpp" package which is tighty related to it, it came to me this question:
1) my C/ C++ code has a return type (let say a double[][] or a user define
class)
2) I am working with an extensive library built by someone else and I don't
have the time/knowledge to change it by means of working
1998 Nov 26
1
Saving memory usage -- .C(....., DUP = FALSE) danger?
Just found out [R 0.63, standard -v -n] :
> rm(list=ls())
> gc()
free total
Ncells 96538 200000
Vcells 214008 250000
> hist(runif(50000))
Error: heap memory (1953 Kb) exhausted [needed 390 Kb more]
which is a bit astonishing given that I still have room for 214000 double's
> u1 <- runif(50000)
> u2 <- runif(50000)
> gc()
2019 Sep 15
0
[External] REprintf could be caught by tryCatch(message)
On Sun, 15 Sep 2019, Jan Gorecki wrote:
> Dear R-devel community,
>
> There appears to be an inconsistency in R C API about the exceptions
> that can be raised from C code.
> Mapping of R C funs to corresponding R functions is as follows.
>
> error -> stop
> warning -> warning
> REprintf -> message
This is wrong: REpintf is like cat with file = stderr().
2009 Dec 22
0
Rcpp 0.7.0: R/C++ integration now even easier
Rcpp version 0.7.0 went onto CRAN this weekend. The key new features are
o inline support, taken from Oleg Sklyar's neat inline package and
adapted/extented to support Rcpp as well as external libraries
(see below for an example); this even works on Windows (provided you
have Rtools installed and configured);
o addition of a new simple type RcppSexp for importing or
2009 Dec 22
0
Rcpp 0.7.0: R/C++ integration now even easier
Rcpp version 0.7.0 went onto CRAN this weekend. The key new features are
o inline support, taken from Oleg Sklyar's neat inline package and
adapted/extented to support Rcpp as well as external libraries
(see below for an example); this even works on Windows (provided you
have Rtools installed and configured);
o addition of a new simple type RcppSexp for importing or
2019 Sep 16
0
[External] REprintf could be caught by tryCatch(message)
You can file it as a wishlist item in the bug trackign system. Without
a compelling case or a complete and well tested patch or both I doubt
it will rise to the top of anyone's priority list.
Best,
luke
On Sun, 15 Sep 2019, Jan Gorecki wrote:
> Thank you Luke for prompt reply.
> Is it possible then to request a new function to R C API "message"
> that would equivalent to
2010 Apr 08
2
I can´t run the example shown in the inline package
I want to run some R script using the inline package (which allows to create
and run inline C++ code in my humble understanding).
So, after loading the required packages and copy and paste the example that
runs C code (in the Reference Manual as a PDF), I have a compilation error.
Any body has ever tried this inline package?
--
View this message in context:
2015 Jun 01
2
sum(..., na.rm=FALSE): Summing over NA_real_ values much more expensive than non-NAs for na.rm=FALSE? Hmm...
I'm observing that base::sum(x, na.rm=FALSE) for typeof(x) == "double"
is much more time consuming when there are missing values versus when
there are not. I'm observing this on both Window and Linux, but it's
quite surprising to me. Currently, my main suspect is settings in on
how R was built. The second suspect is my brain. I hope that someone
can clarify the below
2019 Jan 05
1
unsorted - suggestion for performance improvement and ALTREP support for POSIXct
I believe the performance of isUnsorted() in sort.c could be improved by
calling REAL() once (outside of the for loop), rather than calling it twice
inside the loop. As an aside, it is implemented in the faster way in
doSort() (sort.c line 401). The example below shows the performance
improvement for a vectors of double of moving REAL() outside the for loop.
# example as implemented in
2017 Apr 14
2
potential bug in attribute handling for externalptr
Is the following expected behavior?
> mkext <- inline::cfunction(language="C", body='return
R_MakeExternalPtr(NULL, install("tag"), R_NilValue);')
> x <- mkext()
> y <- x
> attr(y, "foo") <- "bar"
> attributes(x)
$foo
[1] "bar"
I would expect that modifying y's attributes should not affect x.
[Tested
2020 Jun 30
0
Build a R call at C level
It is quite known that R documentation on R C api could be improved...
Still R-package-devel mailing list should be preferred for this kind
of questions.
Not sure if that is the best way, but works.
call_to_sum <- inline::cfunction(
language = "C",
sig = c(x = "SEXP"), body = "
SEXP e = PROTECT(lang2(install(\"sum\"), x));
SEXP r_true =
2020 Jun 30
0
Build a R call at C level
Thanks Jan and Tomas for the feedback.
Answer from Jan is what I am looking for.
Maybe I am not looking in the right place buy it is not easy to understand
how these LCONS, CONS, SETCDR...etc works.
Thank you
Best regards
Morgan
On Tue, 30 Jun 2020, 12:36 Tomas Kalibera, <tomas.kalibera at gmail.com> wrote:
> On 6/30/20 1:06 PM, Jan Gorecki wrote:
> > It is quite known that R