Ruby 2.7 meningkatkan pengumpulan sampah, pemadanan corak

Ruby 2.7, peningkatan terkini bahasa pengaturcaraan Ruby, kini umumnya tersedia sebagai pelepasan produksi. Rilis baru membawa peningkatan dalam pengumpulan sampah, pemadanan corak, dan REPL (read-eval-print-loop).

Baru di Ruby 2.7 adalah koleksi sampah pemadatan, yang digunakan untuk merombak ruang memori yang berpecah-belah. The GC.compactCara kompak objek dalam timbunan itu supaya kurang muka surat yang digunakan. Anggota pasukan pengembangan Ruby menjelaskan bahawa beberapa program Ruby pelbagai utas dapat menyebabkan fragmentasi memori, yang menyebabkan penggunaan memori yang tinggi dan penurunan kecepatan.

Penambahbaikan lain dalam Ruby 2.7.0 termasuk:

  • Keupayaan pemadanan corak eksperimen, yang dapat melintasi objek tertentu dan memberikan nilai jika sesuai dengan corak. Pemadanan corak banyak digunakan dalam bahasa pengaturcaraan berfungsi.
  • Penyuntingan pelbagai baris kini disokong dalam irbshell Ruby interaktif. Integrasi dengan rdoc, sistem dokumentasi Ruby, juga disediakan. Dengan irb, pembangun dapat menampilkan rujukan untuk kelas, kaedah, atau modul. Juga, garis sumber yang ditunjukkan pada binding.irbdan memeriksa hasil untuk objek kelas teras kini diwarnai.
  • Penukaran automatik kata kunci dan argumen kedudukan tidak digunakan lagi. Ciri ini akan dikeluarkan di Ruby 3.
  • Untuk penyusun just-in-time (JIT) yang masih eksperimen, pertama kali diperkenalkan di Ruby 2.6, kod JIT-ed dikompilasi semula menjadi kod yang kurang dioptimumkan apabila pengoptimuman telah dibatalkan. Selanjutnya, kaedah inlining dilakukan apabila kaedah dianggap murni. Walau bagaimanapun, banyak kaedah belum dianggap murni.
  • Yang Enumerable#tally mengira kejadian bagi setiap elemen.
  • Juga diperkenalkan adalah parameter bernombor sebagai parameter blok lalai.

Anda boleh memuat turun Ruby 2.7 dari ruby-lang.org.