From: Jim Date: Fri, 1 May 2015 11:08:30 +0000 (-0400) Subject: Chris' improvement to tc with # X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=2163ed0b2f0a8388eb5db38343d9bcf824c40c68 Chris' improvement to tc with # --- diff --git a/code/refunctionalizing_zippers.rkt b/code/refunctionalizing_zippers.rkt index cac0916b..477daea9 100644 --- a/code/refunctionalizing_zippers.rkt +++ b/code/refunctionalizing_zippers.rkt @@ -69,7 +69,8 @@ (define (tc3 l k) (cond [(null? l) (k '())] - [(eqv? #\# (car l)) (append (k '()) (tc3 (cdr l) identity))] + ; [(eqv? #\# (car l)) (append (k '()) (tc3 (cdr l) identity))] + [(eqv? #\# (car l)) (k (tc3 (cdr l) identity))] [(eqv? #\S (car l)) (tc3 (cdr l) (compose k k))] [else (tc3 (cdr l) (lambda (tail) (k (cons (car l) tail))))])) @@ -78,7 +79,8 @@ (shift k (cond [(null? l) (identity (k '()))] - [(eqv? #\# (car l)) (append (k '()) (reset (tr3 (cdr l))))] + ; [(eqv? #\# (car l)) (append (k '()) (reset (tr3 (cdr l))))] + [(eqv? #\# (car l)) (k (reset (tr3 (cdr l))))] [(eqv? #\S (car l)) ((compose k k) (tr3 (cdr l)))] [else ((lambda (tail) (k (cons (car l) tail))) (tr3 (cdr l)))])))