[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Writing a procedure in different style
From: |
Taylan Kammer |
Subject: |
Re: Writing a procedure in different style |
Date: |
Sun, 13 Dec 2020 12:51:46 +0100 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.5.1 |
On 13.12.2020 08:06, Taylan Kammer wrote:
(define find-in-tree*
(λ (peg-tree filter-proc)
(define traverse
(λ (subtree rest)
(simple-format (current-output-port)
"working with subtree ~a\n"
subtree)
(cond
[(null? subtree)
(if (null? rest)
'()
(traverse (car rest) (cdr rest))]
[(pair? (first subtree))
(traverse (first subtree)
(cons (cdr subtree) rest))]
[(filter-proc (first subtree))
(cons subtree
(traverse (car rest) (cdr rest)))]
[else
(traverse (cdr subtree) rest)])))
(traverse peg-tree '())))
Correction, for third branch of the cond that didn't check if rest is null:
(define find-in-tree*
(λ (peg-tree filter-proc)
(define traverse
(λ (subtree rest)
(simple-format (current-output-port)
"working with subtree ~a\n"
subtree)
(cond
[(null? subtree)
(if (null? rest)
'()
(traverse (car rest) (cdr rest)))]
[(pair? (first subtree))
(traverse (first subtree)
(cons (cdr subtree) rest))]
[(filter-proc (first subtree))
(cons subtree
(if (null? rest)
'()
(traverse (car rest) (cdr rest))))]
[else
(traverse (cdr subtree) rest)])))
(traverse peg-tree '())))
Taylan
- Writing a procedure in different style, Zelphir Kaltstahl, 2020/12/12
- Re: Writing a procedure in different style, Taylan Kammer, 2020/12/13
- Re: Writing a procedure in different style,
Taylan Kammer <=
- Re: Writing a procedure in different style, Zelphir Kaltstahl, 2020/12/13
- Re: Writing a procedure in different style, tomas, 2020/12/13
- Re: Writing a procedure in different style, Zelphir Kaltstahl, 2020/12/13
- Re: Writing a procedure in different style, tomas, 2020/12/13
- Re: Writing a procedure in different style, Zelphir Kaltstahl, 2020/12/20
- Re: Writing a procedure in different style, tomas, 2020/12/21
- Re: Writing a procedure in different style, Zelphir Kaltstahl, 2020/12/21