Sorbet, sistem pemeriksaan tipe statis untuk Ruby, bersumber terbuka.

Perusahaan Stripe, yang mengkhususkan diri dalam pengembangan platform pembayaran online, dibuka kode sumber proyek Sorbet, di mana sistem pemeriksaan tipe statis untuk bahasa Ruby telah disiapkan. Kode ini ditulis dalam C++ dan didistribusikan oleh berlisensi di bawah Apache 2.0.

Informasi tentang tipe dalam kode dapat dihitung secara dinamis, dan juga dapat ditentukan dalam bentuk sederhana anotasi, yang dapat ditentukan dalam kode menggunakan metode sig (misalnya, β€œsig {params(x: Integer).returns(String)}”) atau ditempatkan di file terpisah dengan ekstensi rbi. Tersedia sebagai pendahuluan analisis kode statis tanpa menjalankannya, dan memeriksa saat dijalankan (menyalakan dengan menambahkan "memerlukan 'sorbet-runtime'" ke kode.

Kemungkinan disediakan terjemahan bertahap proyek untuk menggunakan Sorbet - kode dapat menggabungkan blok yang diketik dengan anotasi dan area yang tidak diketik yang tidak tercakup dalam verifikasi. Fitur-fiturnya juga mencakup kinerja yang sangat tinggi dan kemampuan untuk menskalakan basis kode yang berisi jutaan baris kode.

Proyek ini menyertakan kernel untuk pemeriksaan tipe statis,
sebuah toolkit untuk membuat proyek baru menggunakan Sorbet, sebuah toolkit untuk transfer selangkah demi selangkah dari proyek yang ada untuk menggunakan Sorbet, sebuah runtime dengan bahasa khusus domain untuk menulis anotasi tentang tipe dan gudang dengan definisi tipe siap pakai untuk berbagai paket permata Ruby.

Awalnya, Sorbet dikembangkan untuk menguji proyek internal perusahaan Stripe, yang sebagian besar sistem pembayaran dan analisisnya ditulis dalam bahasa Ruby, dan dipindahkan ke kategori open source setelah satu setengah tahun pengembangan dan implementasi. Sebelum membuka kode, pengujian beta dilakukan yang melibatkan lebih dari 30 perusahaan. Pada tahap pengembangan saat ini, Sorbet mendukung peluncuran sebagian besar proyek standar di Ruby, namun mungkin ada beberapa ketidaksesuaian.

Sumber: opennet.ru

Tambah komentar