Ruby 2.0 erscheint zum 20. Jubiläum
Vor langer Zeit schon dafür angekündigt, ist Ruby 2.0 pünktlich zum 20. Geburtstag der Programmiersprache veröffentlicht worden. Die Entwickler zählen über 320 neue Features und über 800 Bugfixes..
- Alexander Neumann
Wie beabsichtigt haben die Ruby-Entwickler pünktlich zum 20. Geburtstag der Skriptsprache ein neues größeres Release veröffentlicht. Als Geburt der Sprache wird das erste Check-in durch Spracherfinder Yukihiro "Matz" Matsumoto am 24. Februar 1993 angesehen. Fristete die Sprache lange Zeit ein Nischendasein, wurde sie durch die zunehmende Popularität des Webframeworks Ruby on Rails vor knapp 10 Jahre zur angesagten Programmiersprache, die auch auf die bis dahin arrivierten Sprachen Einfluss hatte.
Als vermutlich wichtigste der 320 kleinen und großen Features von Ruby 2.0 sind vor allem die sogenannten Refinements, die Enumerator#Lazy-Implementierung und Schlüsselwortargumente zu nennen. Refinements sind eine Spracherweiterung, die das Problem des sogenannten Monkey-Patching angehen sollen. Darunter versteht man einen Prozess, bei dem etwa Klassen um Methoden erweitert, Methoden von Klassen verändert oder bestimmte Objekte mit zusätzlichen Methoden ausgestattet werden, ohne dass sich Klassenerweiterungen verschiedener Bibliotheken negativ beeinflussen. Refinements wurden allerdings aufgrund schwer abwägbaren Performanceverhaltens oder auch ihrer bislang unklaren Vererbung "auf den letzten Drücker" als "experimentell" bezeichnet.
Enumerator#Lazy ermöglicht eine äußerst kompakte Schreibweise für das Abarbeiten von Schleifen und (unendlichen) Collections, da temporäre Arrays nicht mehr nötig sind. Außerdem können Entwickler die Enumerationen verketten. Die auch "named parameters" genannten "keyword arguments" lassen es nun zu, in einem Methodenaufruf für die Parameter direkt Namen anzugeben und in der Methoden-Deklaration für diese Argumente dementsprechend auch Default-Werte. Früher benötigten Entwickler dafür einen Hack.
Die Zahl der Inkompatibilitäten zu Ruby 1.9.x ist laut einem Artikel auf heise Developer überschaubar. Geht es nach den Entwicklern, wird Ruby 2.0 den direkten Vorgänger Ruby 1.9.3 so schnell wie möglich ablösen. Dafür spricht womöglich auch, dass die Entwickler des kommenden Rails 4.0 für ihr Framework den Einsatz des neuen Ruby empfehlen.
Siehe dazu auch:
- Tim Keller, Christian Albrecht; Rubies are forever; Ruby 2.0 als Geschenk zum 20. Geburtstag; Artikel auf heise Developer
(ane)