Programmering

Ruby 2.7 forbedrer skraldindsamling, mønstermatchning

Ruby 2.7, den seneste opgradering af Ruby-programmeringssproget, er nu generelt tilgængelig som en produktionsudgivelse. Den nye udgivelse bringer forbedringer i skraldindsamling, mønstermatchning og REPL (read-eval-print-loop).

Nyt i Ruby 2.7 er komprimeringsaffaldssamling, som bruges til at defragmentere et fragmenteret hukommelsesrum. Det GC.compact metode komprimerer objekterne i bunken, så der bruges færre sider. Medlemmer af Ruby-udviklingsteamet forklarede, at nogle Ruby-programmer med flere tråde kan forårsage hukommelsesfragmentering, hvilket fører til høj hukommelsesudnyttelse og hastighedsforringelse.

Andre forbedringer i Ruby 2.7.0 inkluderer:

  • En eksperimentel mønstermatch-funktion, som kan krydse et givet objekt og tildele en værdi, hvis det matcher et mønster. Mønstertilpasning er meget brugt i funktionelle programmeringssprog.
  • Multi-line redigering understøttes nu i irb, den interaktive Ruby shell. Integration med rdoc, Ruby-dokumentationssystemet, leveres også. Med irb, kan udviklere vise referencen for en klasse, metode eller et modul. Også kildelinjer vist på binding.irb og inspicer resultater for kerneklasseobjekter er nu farvet.
  • Automatisk konvertering af søgeords- og positionsargumenter er udfaset. Denne funktion fjernes i Ruby 3.
  • For den stadig eksperimentelle just-in-time (JIT) kompilator, der først blev introduceret i Ruby 2.6, kompileres JIT-ed-kode til mindre optimeret kode, når en optimering er blevet ugyldiggjort. Endvidere udføres metoden indforing, når en metode betragtes som ren. Imidlertid betragtes mange metoder endnu ikke som rene.
  • En Talbar # stemme tæller forekomsten af ​​hvert element.
  • Der er også introduceret en nummereret parameter som standardblokparameter.

Du kan downloade Ruby 2.7 fra ruby-lang.org.