Re: [Rd] dict package: dictionary data structure for R

From: Seth Falcon <sfalcon_at_fhcrc.org>
Date: Mon, 23 Jul 2007 10:29:43 -0700

Duncan Temple Lang <duncan_at_wald.ucdavis.edu> writes:
> The HashFunc typedef in hashfuncs.h would be more flexible if it
> took an additional argument of type void * to allow for user
> defined data. Alternatively, it might take the hash table
> object itself. The function might want to do some
> updating of the table itself, or look at some table (e.g. for perfect
> hashing). And if we had a place to provide additional information, it
> is easy to allow the hash function object to be an R function.

Worth considering. I don't think perfect hashing is in scope here, but would need to give it more thought -- seems to me that perfect hashing would be better served by something separate.

> Also, you are using a "global" table of hash functions
> (i.e. Dict_HashFunctions) and looking up the C routine using
> GET_HASHFUN
> which is tied to the integer indexing for this global table.
> Why not use the C routines directly from R, i.e. using
> getNativeSymbolInfo and pass this from R to the newly created
> dict. This avoids the lookup, the global table and makes things
> extensible with routines in packages and simply extends to allowing
> R functions to be passed instead of C routines.
> It also removes the need to synchronize the labeling system in
> R and in C, i.e. that 0L corresponds to PJW. The reliance on
> synchronized names rather than direct handles is unnecessary
> although widely used in S/R code.

Why not? Only because I didn't think of it ;-)

> I'm more than happy to give some code to illustrate what I mean
> more precisely if you'd like it.

Sure. At the same time, I'm a bit hesitant to invest further in dict until I get a sense of whether or not it might actually be useful to people. It's main use may turn out to be for investigating hash functions behavior and for a test tool it may be sufficient as-is.

+ seth

-- 
Seth Falcon | Computational Biology | Fred Hutchinson Cancer Research Center
http://bioconductor.org

______________________________________________
R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Mon 23 Jul 2007 - 17:37:37 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Mon 23 Jul 2007 - 22:36:36 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.