ns12 has quit [Read error: Connection reset by peer]
ns121 is now known as ns12
morte has quit [Quit: ERC 5.4 (IRC client for GNU Emacs 28.2)]
szkl has quit [Quit: Connection closed for inactivity]
skapata has quit [Read error: Connection reset by peer]
jeosol has quit [Quit: Client closed]
Raito_Bezarius has quit [Ping timeout: 252 seconds]
notzmv has joined #racket
jlu has joined #racket
mwnaylor has quit [Ping timeout: 260 seconds]
m1dnight has quit [Ping timeout: 252 seconds]
m1dnight has joined #racket
m1dnight has quit [Ping timeout: 268 seconds]
m1dnight has joined #racket
<Putonlalla>
I did it this way, but this changes the buffering mode or something, which breaks flushing and sending eof in DrRacket.
<Putonlalla>
`(define (log-input-port in out) (define (read-wrap bstr obj) (unless (eof-object? obj) (write-bytes bstr out 0 obj)) obj) (define (peek-wrap bstr amt evt obj) obj) (filter-read-input-port in read-wrap peek-wrap))`
ASau has quit [Remote host closed the connection]
m1dnight has quit [Ping timeout: 246 seconds]
m1dnight has joined #racket
<Putonlalla>
Calling `file-stream-buffer-mode` on any of the ports fails.
<Putonlalla>
The main problem is that the documentation doesn't tell how to make `filter-read-input-port` act like `identity`.
<Putonlalla>
Any clues?
<Putonlalla>
I expected `(lambda (in) (filter-read-input-port in (lambda (read-wrap bstr obj) obj) (lambda (bstr amt evt obj) obj)))` and `(lambda (in) in)` to be extensionally (observably) equal, but they are not.
dhil has joined #racket
<Putonlalla>
I really miss (the documentation or formalization of) laws from other functional languages, such as Haskell or Coq.