The accumulator parameter was unneccesary.

D'oh!

THat's the benefit of re-reading your code though: finding derpy shit like this.
This commit is contained in:
Simon Forman 2024-04-09 12:35:14 -07:00
parent da1426ed8d
commit c07883f4cb
1 changed files with 6 additions and 6 deletions

View File

@ -205,18 +205,18 @@
(define (one-token-lookahead token tokens)
(match token
("]" (abort "Extra closing bracket."))
("[" (expect-right-bracket tokens '()))
("[" (expect-right-bracket tokens))
(_ (values (tokenator token) tokens))))
(define (expect-right-bracket tokens0 acc)
(define (expect-right-bracket tokens0)
(if (null? tokens0) (abort "Missing closing bracket.")
(receive (token tokens) (car+cdr tokens0)
(match token
("]" (values acc tokens))
("[" (receive (sub_list rest) (expect-right-bracket tokens '())
(receive (el rrest) (expect-right-bracket rest acc)
("]" (values '() tokens))
("[" (receive (sub_list rest) (expect-right-bracket tokens)
(receive (el rrest) (expect-right-bracket rest)
(values (cons sub_list el) rrest))))
(_ (receive (el rest) (expect-right-bracket tokens acc)
(_ (receive (el rest) (expect-right-bracket tokens)
(values (cons (tokenator token) el) rest)))))))
(define (tokenator token)