Rilis Bahasa Pemrograman Rust 1.69

Rilis bahasa pemrograman tujuan umum Rust 1.69, yang didirikan oleh proyek Mozilla, tetapi sekarang dikembangkan di bawah naungan organisasi nirlaba independen Rust Foundation, telah diterbitkan. Bahasa berfokus pada keamanan memori dan menyediakan sarana untuk mencapai paralelisme pekerjaan yang tinggi sambil menghindari penggunaan pengumpul sampah dan runtime (runtime dikurangi menjadi inisialisasi dasar dan pemeliharaan perpustakaan standar).

Metode penanganan memori Rust menyelamatkan pengembang dari kesalahan saat memanipulasi pointer dan melindungi dari masalah yang muncul karena penanganan memori tingkat rendah, seperti mengakses area memori setelah dibebaskan, dereferencing null pointer, buffer overruns, dll. Untuk mendistribusikan pustaka, menyediakan build, dan mengelola dependensi, proyek mengembangkan manajer paket Cargo. Repositori crates.io didukung untuk hosting perpustakaan.

Keamanan memori disediakan di Rust pada waktu kompilasi melalui pemeriksaan referensi, melacak kepemilikan objek, melacak masa pakai objek (cakupan), dan menilai kebenaran akses memori selama eksekusi kode. Rust juga memberikan perlindungan terhadap integer overflow, membutuhkan inisialisasi wajib dari nilai variabel sebelum digunakan, menangani kesalahan dengan lebih baik di perpustakaan standar, menerapkan konsep referensi dan variabel yang tidak dapat diubah secara default, menawarkan pengetikan statis yang kuat untuk meminimalkan kesalahan logis.

Inovasi utama:

  • Pengelola paket Cargo kini mengidentifikasi peringatan yang dapat diatasi secara otomatis dan merekomendasikan menjalankan "cargo fix" atau "cargo clippy --fix" yang sesuai. peringatan: impor yang tidak digunakan: 'std::hash::Hash' --> src/main.rs:1:5 | 1 | gunakan std::hash::Hash; | ^^^^^^^^^^^^^^^^^ | = catatan: '#[warn(unused_imports)]' aktif secara default peringatan: 'foo' (bin "foo") menghasilkan 1 peringatan (jalankan 'cargo fix --bin "foo"' untuk menerapkan 1 saran)
  • Cargo sekarang menampilkan rekomendasi untuk menggunakan perintah "cargo add" saat mencoba menginstal pustaka menggunakan perintah "cargo install".
  • Untuk mengurangi waktu kompilasi, informasi debug dalam skrip build telah dinonaktifkan secara default. Perubahan ini tidak menghasilkan perbedaan yang terlihat ketika skrip build berhasil dijalankan, tetapi jika terjadi kegagalan, dump backtrace akan berisi lebih sedikit informasi. Untuk kembali ke perilaku sebelumnya, tambahkan kode berikut ke Cargo.toml: [profile.dev.build-override] debug = true [profile.release.build-override] debug = true
  • Bagian baru dari API telah dipindahkan ke kategori stabil, termasuk metode dan penerapan sifat yang telah distabilkan:
    • CStr::dari_byte_hingga_nul
    • inti::ffi::DariBytesSampaiNulError
  • Atribut β€œconst”, yang menentukan kemungkinan menggunakannya dalam konteks apa pun alih-alih konstanta, digunakan dalam fungsi:
    • SocketAddr::baru
    • AlamatSoket::ip
    • AlamatSoket::port
    • AlamatSoket::adalah_ipv4
    • AlamatSoket::adalah_ipv6
    • SocketAddrV4::baru
    • Alamat SoketV4::ip
    • Alamat SoketV4::port
    • SocketAddrV6::baru
    • Alamat SoketV6::ip
    • Alamat SoketV6::port
    • SocketAddrV6::flowinfo
    • SocketAddrV6::lingkup_id
  • Menambahkan kemampuan untuk menggunakan tanda benar dan salah dalam argumen kompiler.

Sumber: opennet.ru

Beli hosting yang andal untuk situs dengan perlindungan DDoS, server VPS VDS πŸ”₯ Beli hosting website andal dengan perlindungan DDoS, server VPS VDS | ProHoster