chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] [Q] Can I do this in Scheme(set-macro-character thing)?


From: Sungjin Chun
Subject: [Chicken-users] [Q] Can I do this in Scheme(set-macro-character thing)?
Date: Wed, 11 Sep 2013 09:41:10 +0900

I'm using following macro in lisp(SBCL) for it's convenient (at least for me).
Can I do this in chicken scheme? Thank you in advance.

(set-macro-character
  #\[
  (lambda (stream char)
    (declare (ignore char))
    (let ((*readtable* (copy-readtable *readtable* nil)))
      (set-macro-character #\] (get-macro-character #\)))
      (set-macro-character #\, (lambda (stream char)
                                 (declare (ignore stream char))
                                 (values)))
      (set-macro-character #\~ (get-macro-character #\,))
      (let ((contents (read-delimited-list #\] stream t)))
        `(vector ,@contents)))))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]