On 2005-dec-09, at 18:22, Hoehle, Joerg-Cyril wrote:
Pascal Bourguignon's proposed patch to src/strings.lisp adds #+clisp, #-clisp to the source. (cf. mailing archives from Mid- November).
I noticed the wide lack of such #+implementation-specific code in the CFFI sources. I like it, but it's limited. I would like to ask what are your thoughts on integration of such code?
James and I have discussed this, the string coded needs a lot of improvement of course. Feature- and optimization-wise.
I.e., there are a few places (e.g. in strings.lisp) where the CLISP version could clearly benefit from specific code. One of the typical improvements is to get rid of (loop ... do mem-ref #) to copy array contents elementwise and have the FFI built-ins handle them (using native loops). Remember, LOOP compiles to byte code, not tight memcpy()-like code that CMUCL can achieve. BTW, what happened to the proposed block memory interface?
Right, once the block memory interface is implemented for all Lisps, we can optimize strings.lisp
Also we need to handle encodings.