Lambda – Procs mit anderer Syntax

0
11

Aus Phyton mag der ein oder andere die bequemen Lambdas kennen, diese gibt es auch by Ruby. Wie so oft kann man fast alles auf verschiedenen Wegen herbeiführen. Ein Lambda kann genau wie Proc eingesetzt werden, nur muss eine andere Syntax verwendet werden und es gibt noch einen weiteren Unterschied der Proc und Lambda unterscheiden.

Beispiel:

Im Vergleich hierzu das ganze mit Procs:

Doch nun zurück zu unseren Lambdas und Ihrer Syntax. Ein Beispiel wie wir alle Stringwerte eines Arrays in Symbole umwandeln können:

Was passiert hier?

In “strings” sind 4 Engelsnamen gespeichert. symbolize ist unsere neue Variable die unser Lambda enthält, welches in geschweiften Klammern definiert: x (also jeder einzelne String aus strings) ist der Parameter, der bearbeitet werden soll. .to_sym ist die Methode die auf diesen Parameter angewendet wird. Diese Methode verwandelt die Parameter auf die es angewant wird in Symbole.

Die letzte Zeile erstellt ein neues Array, indem es strings aufgreift, mit collect die darin enthaltenen Strings einsammelt und mit (&symbolize)(unserem zuvor erstellten Lambda, dass durch diese Syntax angewendet wird) zu Symbolen macht. Von nun an können wir auch weitere, spätere Strings mit (&symbolize) zu Symbolen machen.

LEAVE A REPLY