On 7/1/2011 2:26 PM, chromatic wrote: > On Friday, July 01, 2011 at 10:58 am, Chip Salzenberg wrote: > >> On 7/1/2011 7:24 AM, Kartik Thakore wrote: >>> chip during my talk you mentioned some technology for doing OpenGL >>> context/display lists better. Can you mention it again chip? I seem to >>> have forgotten it. >> Hi! I was talking about tcc, the >> http://en.wikipedia.org/wiki/Tiny_C_Compiler . It's x86-specific but >> otherwise it seems like a convenient and really fast way to create >> structures defined by C. > Are you suggesting an approach like Python's Weave or Cinpy? > > http://scipy.org/Weave > http://www.cs.tut.fi/~ask/cinpy/
Yes, quite. > The approach I had in mind was to build an XS file full of Perl <-> C thunks > and then use the closure-over-dlfunc-pointer trick of P5NCI to avoid writing > (and paying the cost of) hundreds of otherwise-identical XS wrappers. Ah, well, I had perhaps an incomplete understanding of the problem. I thought we needed to create complex data structures for some newer OpenGL calls, so I wanted to ease the difficulty of making complex C data structures from Perl. If, OTOH, the primary problem is exposing a very broad API from C to Perl, then yes, reusing XS wrappers is very good (reduced memory use, better cache coherency, blah blah). > This is > even one spot where a little AUTOLOAD magic would help memory usage even more. > > -- c