From f52235cc514ccdb9ee6420534f9e1b85f6895f74 Mon Sep 17 00:00:00 2001 From: Peter McGoron Date: Sun, 22 Sep 2024 00:49:18 -0400 Subject: [PATCH] read: datum comments --- read.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/read.scm b/read.scm index 8d68093..a8b8c50 100644 --- a/read.scm +++ b/read.scm @@ -436,10 +436,18 @@ port)))))) loop)) +;;; Reads the next toplevel datum, discards it, and then continues at the +;;; toplevel. +(define readtable:datum-comment + (lambda (_ __ toplevel port) + (readtable:next toplevel #f port) + (readtable:next toplevel #f port))) + (define readtable:hash (readtable:process (readtable:empty/default (readtable:error "unimplemented")) (list readtable:update #\| (readtable:jump/next readtable:block-comment)) + (list readtable:update #\; readtable:datum-comment) (list readtable:update %bol readtable:vector))) ;;; ;;;;;;;;;;;;;;;; @@ -498,3 +506,4 @@ (read-all "(x y #| this is a block\n comment\n |# z w)") (read-all "#( a b #| this is a #| nested block |# comment|# z w)") (read-all "#(a b #(c #|close#|comment|#|#y))") +(read-all "(this has a #;(call with current continuation) datum comment)")