6.8 Funktionale Programmierung

Ruby ist keine funktionale Programmiersprache wie Lisp und Haskell, aber Rubys Blöcke, Procs und Lambdas erleichtern einen funktionalen Programmierstil. Jedes Mal, wenn Sie einen Block mit einem Enumerable-Iterator wie map or inject verwenden, programmieren Sie in einem funktionalen Stil. Hier sehen Sie Beispiele, die die Iteratoren map und inject verwenden:

# Mittelwert und Standardabweichung eines Array von Zahlen berechnen
mean = a.inject {|x,y| x+y } / a.size
sumOfSquares = a.map{|x| (x-mean)**2 }.inject{|x,y| x+y }
standardDeviation = Math.sqrt(sumOfSquares/(a.size-1))

Wenn der funktionale Programmierstil für Sie attraktiv ist, ist es leicht, Features zu Rubys eingebauten Klassen hinzuzufügen, die die funktionale ...

Get Die Programmiersprache Ruby now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.