22 Nov
2008
22 Nov
'08
11:36 a.m.
Hi! I'm experimenting with iterate and wanted to use it for a simple sequence splitting function (yeah, I know about the SPLIT-SEQUENCE lib): (defun split (seq pred) (iter (for el in-sequence seq) (if (funcall pred el) (collect el into sat result-type (type-of seq)) (collect el into nsat result-type (type-of seq))) (finally (return (values sat nsat))))) But such a construct won't work because result-type is recognized as a literal (not evaluated). I think it's rather a bug, than a feature, because this somewhat inhibits the possibilities of programmatic extension of the ITER macro. Isn't it? Best regards, Vsevolod