What I meant was that the in memory implementation of the graph model is
pure Ruby, but I wasn't thinking about the utf8proc gem. That gem is based
on C and the only thing it is used for is Unicode Normal Form C
normalization.
My intention *is* to provide a fully pure Ruby solution that can be used
with MRI, JRuby, and Rubinius. Though apparently Rubinius will be capable of
using Ruby's C extensions (that's my understanding). I also want to provide
access to high performance triple stores in ways that won't compromise being
pure Ruby (such as through HTTP protocols for triple stores).
I don't use C directly to extend RubyRDF in any way, and I neglected to
consider the gems I depend on...sorry. Well that's embarrassing. :/ I'll
have to find a Unicode library that will do NFC normalization in pure Ruby.
This is still a preview release, and I'm still massaging the API.
Would you be willing to help me with the unicode normalization?
Paul
On Fri, Apr 11, 2008 at 4:09 PM, carmen <_@whats-your.name> wrote:
>
> the [ANN] description said 'pure Ruby'.
>
> since Redland (quite similar to your API) requires C, i figure someone
> might find this useful, especially as Ruby+Redland users report
> SWIG/Finalizer-related memleaks or might not want the added dep
>
>
> Ruby/Redland works great with MRI 1.9, and ive not found memleaks. whether
> this is due to improvements in language GC or my limited usage of the full
> API, im not sure..
>
> also it appears RubyRDF isnt pure Ruby:
>
> gcc -I. -I/usr/local/include/ruby-1.9.0/x86_64-linux
> -I/usr/local/include/ruby-1.9.0 -I. -fPIC -g -O2 -fPIC -o
> utf8proc_native.o -c utf8proc_native.c
> utf8proc_native.c: In function 'utf8proc_ruby_map':
> utf8proc_native.c:14441: error: 'struct RString' has no member named 'ptr'
> utf8proc_native.c:14441: error: 'struct RString' has no member named 'len'
> utf8proc_native.c:14448: error: 'struct RString' has no member named 'ptr'
> utf8proc_native.c:14448: error: 'struct RString' has no member named 'len'
> make: *** [utf8proc_native.o] Error 1
>
> my memory says it changed to RSTRING_LEN(ptr) or similar. unfortunately
> you have to #ifdef it, as the new macro is not back-compat (or eb did
> anyways)
>
>
> can you summarize in which ways C is used to extend RubyRDF?
>
> (curious)
>
>