Scheme: gebräuchlichster Syntax zur Definition von Funktionen



  • Hallo,
    Ich bin seit kurzem dabei Scheme zu lernen und bin etwas verwirrt, weil
    in verschiedenen Büchern unterschiedliche Möglichkeiten zur Definition
    von Funktionen angegeben werden.

    Welcher Syntax ist in Scheme zur Definition von Funktionen gebräuchlicher:

    (define (print2 one two)
      (display one)
      (display two))
    
    (define print2 (lambda (one two)
                    (display one)
                    (display two)))
    

    Danke schonmal



  • Sind beide gleich gebräuchlich würde ich sagen. Nimm einfach das, was dir besser gefällt :).

    (Wobei ersteres ist gefühlt vielleicht doch ein bisschen verbreiteter).



  • Danke

    ich bevorzuge eher die 2. Variante. Diese erscheint mir leserlicher
    und es wird klar, dass die Funktion in der Variable print2 abgespeichert wird.



  • Frage eines (Scheme-)Unwissenden: bezeichnet man das in Scheme wirklich als "Variable"?



  • hustbaer schrieb:

    Frage eines (Scheme-)Unwissenden: bezeichnet man das in Scheme wirklich als "Variable"?

    Funktions- und Variablennamensraum sind in Scheme nicht getrennt (in Common Lisp dagegen schon). In dem Sinne ist eine Funktion eine Variable.


Anmelden zum Antworten