2017-06-12 17 views
0

Ich habe eine Prozedur, aber eigentlich weiß ich nicht, was es tut. Will es jemand erklären?Racket was ist das Verfahren

(define (stj fun listt) 
    (if (null? listt) 
     `() 
     (cons (fun (car listt)) (stj fun (cdr listt))))) 

Antwort

1

Es ist das map Verfahren, überprüfen Sie die documentation. Es nimmt eine Prozedur und eine Liste als Parameter und wendet die Prozedur auf jedes der Elemente in der Eingabeliste an, wobei eine Ausgabeliste mit den Ergebnissen erzeugt wird:

(stj sqr '(1 2 3 4 5)) 
=> '(1 4 9 16 25)