Ruby 2.7, den siste oppgraderingen av Ruby-programmeringsspråket, er nå generelt tilgjengelig som en produksjonsutgivelse. Den nye utgivelsen gir forbedringer i søppelinnsamling, mønstermatching og REPL (read-eval-print-loop).
Nytt i Ruby 2.7 er komprimeringsavfallssamling, som brukes til å defragmentere et fragmentert minne. De GC.compact
metoden komprimerer objektene i dyngen slik at færre sider blir brukt. Medlemmer av Ruby-utviklingsteamet forklarte at noen Ruby-programmer med flere tråder kan forårsake minnefragmentering, noe som fører til høy minneutnyttelse og hastighetsnedbrytning.
Andre forbedringer i Ruby 2.7.0 inkluderer:
- En eksperimentell mønstertilpasningsevne, som kan krysse et gitt objekt og tildele en verdi hvis det samsvarer med et mønster. Mønster matching er mye brukt i funksjonelle programmeringsspråk.
- Flerlinjeredigering støttes nå i
irb
, det interaktive Ruby-skallet. Integrasjon med rdoc, Ruby-dokumentasjonssystemet, er også gitt. Medirb
, kan utviklere vise referansen for en klasse, metode eller modul. Også kildelinjer vist påbinding.irb
og inspiser resultatene for kjerneklasseobjekter som nå er fargelagt. - Automatisk konvertering av søkeord- og posisjonsargumenter er avviklet. Denne funksjonen vil bli fjernet i Ruby 3.
- For den fortsatt eksperimentelle just-in-time (JIT) kompilatoren, først introdusert i Ruby 2.6, kompileres JIT-ed-koden til mindre optimalisert kode når en optimalisering er ugyldiggjort. Videre utføres metodeinnføring når en metode anses som ren. Imidlertid er mange metoder ennå ikke ansett som rene.
- An
Utallige # stemmer
teller forekomsten av hvert element. - Det er også introdusert en nummerert parameter som standard blokkparameter.
Du kan laste ned Ruby 2.7 fra ruby-lang.org.