FCNBGTLCHUSIR2G76IOEUS6HKTFVY4YKUKPIDSJ4U6FNCZWD53WAC
(test-equal (parse-entry '((a: . "Hi")
(b: . i-am:)
(c: . (a list)))) "{:a \"Hi\" :b :i-am :c (a list)}")
(test-equal
(let ((port (open-output-string)))
(write-edn port '((a: . "Hi")
(b: . i-am:)
(c: . (a list))))
(get-output-string port))
"{:a \"Hi\" :b :i-am :c (a list)}")
(define (read-edn)
@("Reads EDN data from the `current-input-port`, converts it to Chicken data and returns it. Precision suffixes for numbers get ignored, maps get converted to SRFI-69 hashtables, vectors to SRFI-4 vectors.")
(second ((parse-edn '()) (current-input-port))))
(define (read-edn port)
@("Reads EDN data from given port, converts it to Chicken data and returns it. Precision suffixes for numbers get ignored, maps get converted to SRFI-69 hashtables, vectors to SRFI-4 vectors.")
(second ((parse-edn '()) port)))