From: Jim Date: Fri, 1 May 2015 11:08:36 +0000 (-0400) Subject: Merge branch 'working' X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=649716384d5e6e1a828d782369a80a80c4ae1a46;hp=e0aeeda0bf130965c25fdf2171e26d755729b6d8 Merge branch 'working' * working: 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)))])))