@raviqqe
November 15, 2025
(scheme char)
Source code:
(import (scheme base)) (define (foo) (error "Oh, no!" 42) #f) (let () (foo) #f))
Output:
Oh, no! 42 [error foo eval #f]
Example: Upper to lower case mapping
; A -> a, B -> b, C -> c, ... Z -> z ((65 97) (66 98) (67 99) #| ... |# (90 122))
((65 97) (1 1) (1 1) #| ... |# (1 1))
((65 97) (24 . 1))
(import (scheme base) (scheme char) (scheme write)) (write (map (lambda (char) (cons char (char->integer char))) (list #\ß (char-upcase #\ß) (char-downcase #\ẞ))))
> stak ~/foo.scm # same for guile and gosh ((#\ß . 223) (#\ß . 223) (#\ß . 223)) > chibi-scheme ~/foo.scm ((#\ß . 223) (#\ẞ . 7838) (#\ß . 223))
Uppercase mapping These mappings are always one-to-one, not one-to-many or many-to-one.
Because ⟨ß⟩ had been treated as a ligature, ... it had no capital form in early modern typesetting. ... A capital was first seriously proposed in 1879, but did not enter official or widespread use.