Hello, John! TCP/UDP streams are not seekable, so it should return f, and it does. Why does it not return 0 for seekable empty (file) streams?
A bigger quote from the documentation: Word description Returns the length of the data supplied by stream, or f if the stream is not seekable or has unknown length. Notes Stream seeking is not supported on streams that do not have a known length, e.g. TCP/IP streams. 08.07.2016, 00:42, "John Benediktsson" <mrj...@gmail.com>: > For tcp/udp file descriptors, they can return 0 length sometimes and we want > to then return `f` so we read to EOF. > >> On Jul 7, 2016, at 2:26 PM, Alexander Ilin <ajs...@yandex.ru> wrote: >> >> Hello! >> >> OK, ignore that last message, I can see now that it works. >> >> Another question, though. This one is about io.ports: >> >> M: buffered-port stream-length >> handle>> handle-length [ f ] when-zero ; >> >> Why does it never return 0? For instance, what if I open an empty file for >> reading, I'd expect it to return 0, and "f" only for streams that are not >> seekable. >> >> { 0 } >> [ >> "empty.txt" binary [ input-stream get stream-length ] with-file-reader >> ] unit-test >> >> From the documentation on stream-length: >> Word description >> Returns the length of the data supplied by stream, or f if the stream is >> not seekable or has unknown length. >> >> Why not return 0 so that I could test that with if-zero? >> >> 07.07.2016, 23:55, "Alexander Ilin" <ajs...@yandex.ru>: >>> Hello! >>> >>> I'm deep in debugging, so just a quick note/question: does the following >>> word work? >>> >>> M: windows can-seek-handle? ( handle -- ? ) >>> handle>> handle>file-size >boolean ; >>> >>> given that handle>file-size is implemented a few lines above as follows >>> (the comment is in the code as well): >>> >>> ! GetFileSizeEx errors with ERROR_INVALID_FUNCTION if handle is not >>> seekable >>> : handle>file-size ( handle -- n/f ) >>> (handle>file-size) [ >>> GetLastError ERROR_INVALID_FUNCTION = >>> [ f ] [ throw-win32-error ] if >>> ] unless* ; >>> >>> ---=====--- >>> Александр >>> >>> >>> ------------------------------------------------------------------------------ >>> Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San >>> Francisco, CA to explore cutting-edge tech and listen to tech luminaries >>> present their vision of the future. This family event has something for >>> everyone, including kids. Get more information and register today. >>> http://sdm.link/attshape >>> _______________________________________________ >>> Factor-talk mailing list >>> Factor-talk@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/factor-talk >> >> ---=====--- >> Александр >> >> >> ------------------------------------------------------------------------------ >> Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San >> Francisco, CA to explore cutting-edge tech and listen to tech luminaries >> present their vision of the future. This family event has something for >> everyone, including kids. Get more information and register today. >> http://sdm.link/attshape >> _______________________________________________ >> Factor-talk mailing list >> Factor-talk@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/factor-talk > > ------------------------------------------------------------------------------ > Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San > Francisco, CA to explore cutting-edge tech and listen to tech luminaries > present their vision of the future. This family event has something for > everyone, including kids. Get more information and register today. > http://sdm.link/attshape > _______________________________________________ > Factor-talk mailing list > Factor-talk@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/factor-talk ---=====--- Александр ------------------------------------------------------------------------------ Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San Francisco, CA to explore cutting-edge tech and listen to tech luminaries present their vision of the future. This family event has something for everyone, including kids. Get more information and register today. http://sdm.link/attshape _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk