case

Q&A's, tips, howto's
Locked
kesha
Posts: 7
Joined: Tue Dec 04, 2012 9:11 pm

case

Post by kesha »

Hi All,
how can perform multiple checks.

Code: Select all

(define	(test-case KEY)
  (case KEY
    (0 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (1 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (2 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (3 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (4 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (5 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (6 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (7 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (8 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (9 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (true (println "END CASE..."))))

cormullion
Posts: 2038
Joined: Tue Nov 29, 2005 8:28 pm
Location: latiitude 50N longitude 3W
Contact:

Re: case

Post by cormullion »

Perhaps you explain what you want to do a bit more?

The most flexible and readable form for condition testing is probably cond.

kesha
Posts: 7
Joined: Tue Dec 04, 2012 9:11 pm

Re: case

Post by kesha »

It's just food for thought on the use of recursion.
If refined, could get interesting.
For example:

Code: Select all

#!/usr/bin/env newlisp                                                                     

(define (test-case KEY)
  (case KEY
    (0 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (1 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (2 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (3 (begin (println "KEY => " KEY)(test-case (++ KEY))))
    (true (println "END CASE..."))))

(test-case 0)

(exit)
; eof

-------------------------------------------------------------

KEY => 0
KEY => 1
KEY => 2
KEY => 3
END CASE...

Locked