Kristal 0.34.0 dirilis

Versi baru Crystal telah dirilis, bahasa pemrograman yang dikompilasi dengan sintaks Ruby, fitur utamanya adalah runtime dengan loop acara "bawaan", di mana semua operasi I/O tidak sinkron, dukungan untuk multithreading (selama karena diaktifkan oleh sebuah flag selama kompilasi) dan pengoperasian yang sangat sederhana dan nyaman dengan perpustakaan di C.

Dimulai dengan versi 0.34.0, bahasa tersebut secara resmi mulai bergerak menuju rilis nyata pertamanya (yaitu versi 1.0).

Versi baru Crystal mencakup perubahan dan peningkatan berikut berdasarkan kepentingannya:

  • Pustaka logging baru telah ditambahkan ke API Log, yang, tidak seperti yang lama, dapat mengirim pesan ke backend yang berbeda dan memfilter pesan-pesan ini secara berbeda bergantung pada β€œsumber”.

  • Dasar-dasar dari dunia pengembangan C, salah ΠΈ Kesalahan Menang, yang digunakan untuk primitif I/O, sudah ketinggalan zaman berkat hierarki pengecualian IO::Kesalahan (namun belum ada yang melarang penggunaan Errno).

  • Menghapus substitusi otomatis else nil dari operator kasus/kapan/lainnya. Hal ini dilakukan untuk mencegah pengembang melewatkan salah satu cabang secara tidak sengaja. ketika saat mencocokkan kasus deterministik seperti enum dan melewati tipe dari Union. Artinya, sederhananya, kode ini tidak akan berfungsi lagi tanpa menentukan satu kode lagi ketika (saat Char) atau tugas lain-ranting:

sebuah = 1 || 'x' || "foo"
kasus a
ketika Int32
#…
ketika Tali
#…
akhir

  • Opsi kompiler nonaktifkan_overflow tidak lagi tersedia. Untuk operasi luapan, gunakan metode &+, &-, &*.

  • Array#isi sekarang terbang lebih cepat daripada peluru, berkat penggantian loop bodoh dengan satu memset sederhana;

  • Manajer pecahan (paket), disebut, secara paradoks, pecahan, kini menggunakan algoritme kepuasan ketergantungan Molinillo yang lebih cepat dan efisien yang ditemukan di CocoaPods (Swift) dan Builder (Ruby).

  • Ditambahkan dukungan LLVM 10, yang secara teori akan memberi kita peningkatan produktivitas, stabilitas, dll.

...dan masih banyak lagi, menurut pendapat subjektif saya, perbaikan yang kurang signifikan.

Saya ingin mencatat bahwa Crystal adalah bahasa yang dibangun di atas LLVM, yang memungkinkan Anda untuk menulis aplikasi terkadang lebih cepat, lebih sederhana dan lebih ringkas daripada "saudara" yang ditafsirkan, dan pada saat yang sama mendapatkan biner yang cukup cepat sebagai hasilnya. Dibandingkan dengan Golang, ini menonjol karena OOP-nya yang lengkap, dukungan untuk obat generik, dan sintaksis yang sangat sederhana dan mudah dipahami. Tujuannya sebagian besar mirip dengan Nim, tetapi pada saat yang sama jelas berfokus pada penggunaan praktis β€œdi sini dan saat ini”, berkat itu ia memiliki banyak alat yang terdokumentasi dengan baik, nyaman dan berkualitas tinggi di gudang API-nya, didukung oleh pengembang bahasa dan karenanya sangat stabil.

Sumber: linux.org.ru

Tambah komentar