This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
lineio.scm and hcons.scm are broken (bitrotted). Here are the (very short) patches. They are necessary for the lang package to be usable. Note that lineio may not work correctly, since I just removed everything referring to ungetc-chars. It appears to be behaving for me... Andrew aarchiba@undergrad.math.uwaterloo.ca *** new/lineio.scm Sat Jun 06 18:55:49 1998 --- guile-core-19980619/ice-9/lineio.scm Tue Jun 24 12:26:23 1997 *************** *** 90,99 **** (unread-string (lambda (str) (and (< 0 (string-length str)) ! ;; (if (ungetc-char-ready? self) ! ;; (set! buffers (append! (list str (string (rea d-char self))) buffers)) ! ;; (set! buffers (cons str buffers)))))) ! (set! buffers (cons str buffers))))) (read-string (lambda () (cond --- 90,98 ---- (unread-string (lambda (str) (and (< 0 (string-length str)) ! (if (ungetc-char-ready? self) ! (set! buffers (append! (list str (string (rea d-char self))) buffers)) ! (set! buffers (cons str buffers)))))) (read-string (lambda () (cond *************** *** 101,115 **** (let ((answer (car buffers))) (set! buffers (cdr buffers)) answer)) ! ;; ((ungetc-char-ready? self) ! ;; (read-line self 'concat)) (else ! (read-line underlying-port 'concat)))))) ;handle-newlin e->concat (set-object-property! self 'unread-string unread-string) (set-object-property! self 'read-string read-string) self)) - - --- 100,112 ---- (let ((answer (car buffers))) (set! buffers (cdr buffers)) answer)) ! ((ungetc-char-ready? self) ! (read-line self 'include-newline)) (else ! (read-line underlying-port 'include-newline)))))) (set-object-property! self 'unread-string unread-string) (set-object-property! self 'read-string read-string) self)) *** new/hcons.scm Fri Jun 12 22:28:19 1998 --- guile-core-19980619/ice-9/hcons.scm Tue Jun 24 12:26:22 1997 *************** *** 36,50 **** n)) (define-public (hashq-cons-assoc key l) ! (if (eq? l '()) '() ; (not (eq? #f '())) -allover ! (and l ! (or (and (pair? l) ; If not a pair, use its cdr? ! (pair? (car l)) ! (pair? (caar l)) ! (eq? (car key) (caaar l)) ! (eq? (cdr key) (cdaar l)) ! (car l)) ! (hashq-cons-assoc key (cdr l)))))) (define-public (hashq-cons-get-handle table key) (hashx-get-handle hashq-cons-hash hashq-cons-assoc table key #f)) --- 36,48 ---- n)) (define-public (hashq-cons-assoc key l) ! (and l (or (and (pair? l) ! (pair? (car l)) ! (pair? (caar l)) ! (eq? (car key) (caaar l)) ! (eq? (cdr key) (cdaar l)) ! (car l)) ! (hashq-cons-assoc key (cdr l))))) (define-public (hashq-cons-get-handle table key) (hashx-get-handle hashq-cons-hash hashq-cons-assoc table key #f))