William ML Leslie writes:

> Actually, I should clarify a few things, but this discussion probably
> belongs on guile-user.

I realise that now, reading below...

> Whenever the documentation says 'may', it really means it.  You
> absolutely cannot rely on the side-effecting behaviour, because an
> implementation that does no mutation whatsoever is a valid
> implementation of (take!), according to the documentation.  All you're
> saying by using (take!) is, if it is more efficient to do so by
> altering the list, then please do.

Thank you for this clue-bat.

Wow, I never realised that !/_x is only a performance/ugliness thingy,
except when used with set!.  I somehow assumed `!' meant: will alter
in-place.  My bad.

Is there really a good reason for exposing such performance
considerations to the user; can't the compiler [often] tell whether it's
safe to modify in place?

Greetings, Jan

-- 
Jan Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl  

Reply via email to