Ignore:
Timestamp:
03/03/10 21:05:41 (11 years ago)
Author:
astalla
Message:

Support for user-extensible sequences, adapted from SBCL.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/sequences.lisp

    r11391 r12516  
    3030;;; exception statement from your version.
    3131
     32;(require "EXTENSIBLE-SEQUENCES-BASE")
     33
    3234(in-package #:system)
    3335
     
    5759
    5860(defmacro make-sequence-like (sequence length)
    59   `(make-sequence-of-type (type-of ,sequence) ,length))
     61  "Return a sequence of the same type as SEQUENCE and the given LENGTH."
     62  ;;Can't use gensyms: stack overflow in boot.lisp
     63    `(let ((msl-seq-tmp-var ,sequence) (msl-len-tmp-var ,length))
     64       (sequence::seq-dispatch msl-seq-tmp-var
     65   (make-sequence-of-type (type-of msl-seq-tmp-var) msl-len-tmp-var)
     66   (make-sequence-of-type (type-of msl-seq-tmp-var) msl-len-tmp-var)
     67   (sequence::make-sequence-like msl-seq-tmp-var msl-len-tmp-var))))
Note: See TracChangeset for help on using the changeset viewer.