Guile Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: generic method names for collections
Maciej Stachowiak <mstachow@mit.edu> writes:
> And it will work. In fact, unlike with Common Lisp `setf', the
> following will work right as well:
>
> (define v '#(1 2 3))
> (define foobar vector-ref)
> (setf! (foobar v 0) 99)
>
> Even something like
>
> (define v '(#(1 2 3) #(4 5 6)))
> (setf! (vector-ref (cadr v) 1) 99)
>
> Will cause v to have the expected final value of
> (#(1 2 3) #(4 99 6))
>
> with only the code above. Neat, eh?
It sounds like this generic setter arrangement is more general than
Common Lisp's in some ways.
My question is this; assume that hobbit was trained to understand
generic setters; would your system provide enough information to the
compiler to allow for complete compile time translation of generic
setters?
This is what is neat about Common Lisp's system, IMHO. It's a
compile-time dance, so you pay no speed penalty.
-russ
--
Computers are not intelligent. They only think they are.
Guile Home |
Main Index |
Thread Index