README - clic - Clic is an command line interactive client for gopher written in Common LISP (HTM) git clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/ (DIR) Log (DIR) Files (DIR) Refs (DIR) Tags (DIR) README (DIR) LICENSE --- README (1485B) --- 1 trivial-gray-streams 2 ==================== 3 4 Gray streams is an interface proposed for inclusion with ANSI CL 5 by David N. Gray in Issue STREAM-DEFINITION-BY-USER 6 (http://www.nhplace.com/kent/CL/Issues/stream-definition-by-user.html). 7 The proposal did not make it into ANSI CL, but most popular 8 CL implementations implement this facility anyway. 9 10 This system provides an extremely thin compatibility layer for gray 11 streams. 12 13 How to use it 14 ============= 15 16 Use the package TRIVIAL-GRAY-STREAMS to refer Gray stream 17 classes to inherit from, generic functions to implement. 18 19 Extensions 20 ========== 21 22 The Gray proposal was made before the ANCI CL standard was finalized, 23 and was based on the Common Lisp The Language book. 24 25 The book does not have cl:file-position, cl:read-sequence, cl:write-sequence 26 functions. That's why (we think) the Gray proposal does not specify 27 their counterparts: stream-file-position, stream-read-sequence, stream-write-sequence. 28 29 trivial-gray-streams supports these functions: 30 31 Generic function STREAM-READ-SEQUENCE (stream sequence start end &key) 32 Generic function STREAM-WRITE-SEQUENCE (stream sequence start end &key) 33 34 Notice that we use two required arguments and allow additional 35 keyword arguments. Your methods on these function should have 36 compliant lambda lists: 37 (stream sequence start end &key) 38 39 Generic function STREAM-FILE-POSITION (stream) => file position 40 Generic function (SETF STREAM-FILE-POSITION) (position-spec stream) => successp