armedbear / abcl

Armed Bear Common Lisp <git+https://github.com/armedbear/abcl/> <--> <svn+https://abcl.org/svn> Bridge
https://abcl.org#rdfs:seeAlso<https://gitlab.common-lisp.net/abcl/abcl>
Other
290 stars 29 forks source link

Add gray-streams:stream-file-length support #636

Closed yitzchak closed 11 months ago

yitzchak commented 11 months ago

An extension to Gray streams which allows implementing CL:FILE-LENGTH. Supported by CMUCL, Mezzano, Lispworks, and SBCL. Recently added to Clasp and ECL.

easye commented 11 months ago

Looks good as an implementation as far as I can see so far.

@yitzchak Curious whether this extension to GRAY-STREAMS is being documented/standardized anywhere? I'd perhaps like to add a bit of text to the ABCL user manual to note the addition, so looking for something to reference. And I'd like to understand what else ABCL may be missing that is common in other implementations.

Thanks for the patch!

yitzchak commented 11 months ago

I may submit it to trivial-gray-streams, but I am bit on the fence about that since I have some concerns with how trivial-gray-streams has been implemented. I have started nontrivial-gray-streams which is what I think trivial-gray-streams should have been. It includes some initial documentation on the various extensions and the start of a test suite. It also adds features indicating each implementation's support for extensions and capabilities. Still early days, though.

easye commented 11 months ago

I may submit it to trivial-gray-streams […]

Actually, ABCL doesn't have any documentation on its GRAY-STREAMS implementation in our manual at the moment, so adding something quickly won't necessarily be easy.

I'll merge this pull request as-is, follow your progress on https://github.com/yitzchak/nontrivial-gray-streams, and deal with some ABCL-side documentation in the future.

yitzchak commented 11 months ago

Sounds good. Thanks!