;;; Succeeds in Clasp and SBCL. (uiop:with-output-file (s #P"/tmp/blah.txt" :element-type :default :if-exists :supersede) (write-byte 1 s) (write-char #\a s)) ;;; Succeeds in Clasp, fails in SBCL. (uiop:with-output-file (s #P"/tmp/blah.txt" :element-type '(unsigned-byte 8) :if-exists :supersede) (write-byte 1 s) (write-char #\a s)) ;;; Succeeds in Clasp, fails in SBCL. (uiop:with-output-file (s #P"/tmp/blah.txt" :element-type 'character :if-exists :supersede) (write-byte 1 s) (write-char #\a s)) ;;; Fails in Clasp, succeeds in SBCL. (uiop:with-input-file (s #P"/tmp/blah.txt" :element-type :default) (format t "~A ~A~%" (read-byte s) (read-char s))) ;;; Succeeds in Clasp, fails in SBCL. (uiop:with-input-file (s #P"/tmp/blah.txt" :element-type '(unsigned-byte 8)) (format t "~A ~A~%" (read-byte s) (read-char s))) ;;; Fails in Clasp, fails in SBCL. (uiop:with-input-file (s #P"/tmp/blah.txt" :element-type 'character) (format t "~A ~A~%" (read-byte s) (read-char s)))