diff --git a/lab/pretty-print.ss b/lab/pretty-print.ss index 29a3681..7167a99 100644 --- a/lab/pretty-print.ss +++ b/lab/pretty-print.ss @@ -178,3 +178,33 @@ ;;; pretty-print prints when it is called. If set to #f (the default), ;;; no limit is imposed; if set to a nonnegative fixnum n, at most n ;;; lines are printed. + + + +(let () +;;; ::= (quote symbol) +;;; | var +;;; | symbol +;;; | (read-macro string symbol) +;;; | (meta) +;;; | (bracket . fmt-list) +;;; | (alt fmt fmt*) +;;; | fmt-list +;;; fmt-list ::= () +;;; | (tab fmt ...) +;;; | (fmt tab ...) +;;; | (tab fmt . fmt-list) +;;; | (fmt ...) +;;; | (fmt . fmt-list) +;;; | (fill tab fmt ...) +;;; tab ::= int +;;; | #f + + + ) + +(pretty-format + '([letrec (_ ((x _) ...) #t _ _ ...)] + [let (_ x ([x _] 0 ...) #t _ _ ...)] + [cond (_ (or (_ 0 _) (_ '=> 0 _)) ...)] + diff --git a/lib/ikarus.boot b/lib/ikarus.boot index f3ba36e..821f71d 100644 Binary files a/lib/ikarus.boot and b/lib/ikarus.boot differ diff --git a/lib/libchezio.ss b/lib/libchezio.ss index c66a5b6..f859c26 100644 --- a/lib/libchezio.ss +++ b/lib/libchezio.ss @@ -34,23 +34,6 @@ ;;; (set-port-output-index! port fixnum) ;;; (set-port-output-size! port fixnum) ;;; - #;(begin - ;;; uncomment this form to use the compiler's definition - ;;; of ports; otherwise, ports are represented as vanilla - ;;; records. - ($define-record-syntax port - (handler input-buffer input-index input-size - output-buffer output-index output-size)) - (define-syntax port? (identifier-syntax $port?)) - (define-syntax input-port? - (syntax-rules () - [(_ x) (identifier? #'x) - (and ($port? x) (string? ($port-input-buffer x)))])) - (define-syntax output-port? - (syntax-rules () - [(_ x) (identifier? #'x) - (and ($port? x) (string? ($port-output-buffer x)))]))) - ;;; (primitive-set! 'port? (lambda (x) (port? x))) ;;; @@ -390,8 +373,6 @@ ($flush-output-port p) (error 'flush-output-port "~s is not an output-port" p))]))) - - (let () ;;; INPUT FILES (include "message-case.ss")