[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Array Register Analog in MCL?



At 12:00 AM 5/14/95, John C. Mallery wrote:
[...]
>Fast enough, but I need to get reaonsable lisp types out so that they could
>be reinserted, for example, with setf aref.
>
>This returns objects like #<Unprintable CCL::IMMEDIATE : #x666F6F6F>
>
>I can get in trouble if I try to stuff these into, for example, strings.
>
>I'm primarily concerned with fast string hacking at this time.
>
>Is there a way to get the returned object converted into the relevant lisp type?
>
>If we can settle on the right fast-aref, it might be worth adding the
>array-registers
>declaration to MCL so that the compiler can do the work rather than a user
>macro.

I'm not familiar with the semantics of the "array-registers" declaration.
If you wrap an SVREF form in a speed 3/safety 0 declaration, then you
also have to make sure the arguments are the correct types. For strings,
they're not, therefore the incorrect results. For simple strings, using
SCHAR instead of SVREF would give correct results, but doesn't compile
to code that's quite as efficient.

- Steve Hain

Digitool, Inc.
______________________________________________________________________________
                       One Main Street   7th Floor   Cambridge, MA 02142   USA
                              Internet: slh@digitool.com   AppleLink: digitool
                                      World Wide Web: http://www.digitool.com/
                                         Tel: 617 441-5000   Fax: 617 576-7680