Was ist neu in Ruby 2.6?

Ruby 2.6, die neueste Version der ehrwürdigen dynamischen Sprache, ist jetzt als Produktionsversion verfügbar.

Was ist neu in Ruby 2.6?

Ruby 2.6 fügt eine erste Implementierung eines JIT (Just-in-Time-Compilers) hinzu, um die Leistung der Programmausführung zu verbessern. Rubys JIT-Compiler schreibt C-Code auf die Festplatte und erzeugt einen C-Compiler-Prozess zum Generieren von nativem Code. Der JIT-Compiler wird unterstützt, wenn Ruby vom GCC-Compiler Clang oder Microsoft Visual C ++ erstellt wird, der zur Laufzeit verfügbar sein muss.

Weitere neue Funktionen in Ruby 2.6 sind:

  • Bei einer Änderung der Sprache $SAFEhandelt es sich um einen globalen Prozessstatus und 0 kann erneut gesetzt werden.
  • Verbesserte Leistung, block.callwenn blockals blockParameter übergeben wird.
  • Proc#call wurde beschleunigt.
  • Das experimentelle  RubyVM::ASTModul mit einer Analysemethode, die einen Zeichenfolgencode analysiert und AST-Knoten zurückgibt. Außerdem parse_ fileanalysiert die  Methode eine Codedatei und gibt AST-Knoten zurück.
  • Die experimentelle RubyVM::AST::NodeKlasse zeigt Standortinformationen und untergeordnete Knoten von Node Objekten an.
  • Konstante Namen können mit einem Nicht-ASCII-Großbuchstaben beginnen.
  • Es werden endlose Bereiche eingeführt, die so funktionieren, als hätten sie kein Ende.
  • Transient Heap ( theap) wird eingeführt und theapdient als verwalteter Heap für kurzlebige Speicherobjekte, auf die von bestimmten Klassen verwiesen wird.
  • Die Unicode-Unterstützung ist jetzt in Version 11 verfügbar.
  • Bundler zum Verwalten von Gem-Abhängigkeiten ist jetzt ein Standard-Gem.

Wo kann man Ruby 2.6 herunterladen?

Sie können Ruby 2.6 von der Ruby-Projektwebsite herunterladen.

Vorherige Version: Ruby 2.5

Ruby 2.5.0 erscheint am Weihnachtstag 2017 und ist die erste stabile Version der 2.5-Serie.

Es erhöht die Leistung um 5 bis 10 Prozent, indem Trace-Anweisungen aus dem Bytecode entfernt werden, bei dem festgestellt wurde, dass sie Overhead sind. Stattdessen wird eine dynamische Instrumentierungstechnik verwendet. Außerdem wurde die Blockübergabe durch einen Blockparameter mithilfe der Lazy Proc-Zuweisungstechnik dreimal schneller als in Ruby 2.4 durchgeführt.

Weitere Funktionen, die die Leistung verbessern, sind:

  • Die Dokumentenerstellung wurde durch den Wechsel vom alten lexikalischen Analysator von IRB zu Ripper verbessert.
  • Die MutexKlasse wurde neu geschrieben, um sie kleiner und schneller zu machen. Mutexkann verwendet werden, um den Zugriff auf gemeinsam genutzte Daten von gleichzeitigen Threads zu verwalten.
  • ERB generiert Code aus einer Vorlage mit der doppelten Geschwindigkeit wie Version 2.4.
  • Die Leistung wurde in integrierten Methoden verbessert , einschließlich Array#concat, Enumerable#sort_byund String#concat.

Weitere Verbesserungen in Ruby 2.5 sind:

  • Struct/new kann Klassen erstellen, die Schlüsselwortargumente akzeptieren.
  • Do/endBlöcke funktionieren jetzt direkt mit ensure/rescue/else.
  • Die pp.rb-Bibliothek wird automatisch geladen.
  • Es wurde eine Option hinzugefügt, um die Rückverfolgung in umgekehrter Reihenfolge zu drucken. Die Absicht ist, die Hauptfehlermeldung zu erhalten, ohne scrollen zu müssen.
  • Um die Tests zu verbessern, wird Unterstützung für die Messung der Zweigstellen- und Methodenabdeckung angeboten. Die Zweigabdeckung zeigt an, welche Zweige ausgeführt werden, während die Methodenabdeckung angibt, welche Methoden aufgerufen werden.

Ruby 2.5 bietet auch eine Fehlerbehebung, bei der die SecureRandom-Bibliothek zum Generieren von Zufallszahlen, die jetzt vom Betriebssystem bereitgestellte Quellen gegenüber OpenSSL bevorzugt. Außerdem wurden Standardbibliotheken wie cmath, csv, date, dbm und ipaddr zu Edelsteinen befördert.

Wo kann man Ruby 2.5 herunterladen?

Sie können Version 2.5 herunterladen, indem Sie diese tar.gz-Datei oder diese Zip-Datei öffnen.