( pentike | 2024. 03. 09., szo – 21:29 )

Úgy tűnik a hozzászólásokból, hogy a csapat egy jelentős részének - ide értve magamat is - már megkoptak vagy soha nem is voltak elég mély ismereteik ahhoz, hogy egyáltalán értsék, hogy mégis mi a nyavaja történik vagy kéne történjen itt pontosan, mi fán terem a rendszerprogramozás. Ennek ellenére persze egyesek meglehetősen vehemensen osztják az észt :)

Nem programoztam rustban, még csak nem is nagyon foglalkoztam vele, szóval gondoltam doksi jóbarát, nézzük mit tud az unsafe:

https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html

Aztán ismerős volt, már idézett valaki ebből.

Rust needs to allow you to do low-level systems programming, such as directly interacting with the operating system or even writing your own operating system. Working with low-level systems programming is one of the goals of the language.

 Ebből a felületes kezdeti bevezetőből nekem két dolog jön le:

1. Alacsony szinten programozni rustban usafe nélkül nem lehet, azért van, hogy ha valaki ilyet akar, akkor tudjon.

2. Kifejezetten cél, hogy lehessen unsafe-et használni, ez egy üzemmódja a nyelvnek adott feladat esetében és akkor a programozó tökönszúrhatja magát ha akarja.

Tehát vannak dolgok amiket a nyelv tervezői szerint Rustban is deklaráltan veszélyesen csinálnak az emberek. Namármost akkor megintcsak két dolog lehet.

1. Amiért szidják a C-t, hogy szar meg nem biztonságos, az igazából zömében nem az alacsonyszintű rendszerprogramozás, hanem a magasabb szintű pl. OpenSSL, GTK (még mielőtt nekem esnének, hogy ezek nem is szarok, ezek csak példák magasabb szintű felhasználásra), ahol azért használják mert egy C formájú kalapáccsal oda is oda lehet baszni.

2. Azokat a feladatokat amiket meg lehet oldani Rusttal safe módban nyilván meg lehet írni C-ben is megfelelő eszköztámogatással éppen olyan biztonságosan. Akkor az a kérdés, hogy kényelmesebb-e Rustban dolgozni?

 

Nekem elsőre a Rust szintaxisa elég fura, de lehet csak szokni kell. :)