Arc Forumnew | comments | leaders | submitlogin
2 points by akkartik 5828 days ago | link | parent

It seems like:

  (zap cdr s)
doesn't work when s is a scanner -- s remains unchanged. I looked at the code and convinced myself that macros like zap that call setforms won't work for new types. Does that make sense?


2 points by almkglor 5828 days ago | link

  arc> (require "lib/scanner.arc")
  nil
  arc> (= s (scanner-string "asdf"))
  #3(tagged scanner (#<procedure> . #<procedure>))
  arc> (car s)
  #\a
  arc> (zap cdr s)
  #3(tagged scanner (#<procedure> . #<procedure>))
  arc> (car s)
  #\s

-----