2:23:26buffergn0meWhat is not Common Lisp about https://gitlab.common-lisp.net/iterate/iterate ? Did something change?
2:26:07pierpathe first problem is that the third form in the file is (defconst version "1.4" "Current version of Iterate"), which is not CL, and hence does not get compiled by a CL compiler. I have not examined the rest of the source to see what else is broken.
2:29:13buffergn0meLooks like DEFCONST is a macro defined in package.lisp
2:30:24pierpaah, yes. You are right. I had missed that.
2:31:43pierpaloading packages.lisp and iterate.lisp in sequence should work, and it used to work for decades. Now it doesn't.
2:42:34clintmIs there a mechanism of any sort that will allow me to iterate over a list and also step backward through that same list? I'm trying to avoid binding a symbol to the previous item, or the like.
2:43:01pfdietzIs that different from the ITERATE in QL? That also has a defconst macro in packages.lisp.
2:43:41pfdietz"work around sbcl's obnoxious standard compliance"
2:43:42clintmI haven't looked through the docs for iterate past a once-over glance. I'll look again though.
2:44:29pfdietzStep backwards? Not that I know of. In general that could be expensive, as ordinary lists do not have back pointers.
2:44:47pierpapfdietz: I don't know if it's the same as the one in QL
2:46:09clintmWell, maybe step backwards isn't the best way to describe it, but it looks like iterate's previous keyword is what I'm looking for. Testing it out now.
2:46:19pierpaclintm: (loop for x in list for y in (rest list) ...) could do what you want?
2:46:47clintmpierpa: is (rest list) equivalent to (cdr list)?
2:49:25clintmI think this is one of those situations where I need to just stop, take my hands off of the keyboard for a minute, and think about what I'm trying to do.