La scorsa settimana è andata in scena la conferenza re:Invent di AWS, in cui sono state presentate in anteprima diverse novità per gli sviluppatori. Tra queste, di particolare rilievo è quella che riguarda l'annuncio di nuovi SDK per i linguaggi di programmazione Rust, Swift e Kotlin.
I nuovi SDK per AWS
Gli SDK in questione rappresentano dei wrapper scritti nei suddetti linguaggi, che agevolano l'interazione con le API di AWS. Attualmente, AWS mette a disposizioni un set di SDK già abbastanza nutrito, fornendo supporto a JavaScript, Python, PHP, C#, Ruby, Java, Go, Node.js e C++. Le nuove aggiunte sono però abbastanza importanti.
Kotlin è infatti ormai il linguaggio di programmazione principale per chi sviluppa app per Android, e come Java viene eseguito appoggiandosi ad una JVM. Swift è l'analogo per il mondo Apple, ed è oggi il linguaggio più usato dagli sviluppatori di applicazioni per iOS e macOS, oltre a poter essere utilizzato anche lato server. È quindi evidente la volontà di Amazon di supportare il più possibile l'interazione tra AWS e i dispositivi mobili.
E Rust?
A ciò si aggiunge poi Rust, linguaggio sviluppato da Mozilla con l'intento di risultare veloce quasi quanto il C, ma con il vantaggio di implementare una gestione della memoria più sicura e moderna. Le ragioni dietro alla necessità di supportare Rust sono dunque diverse, anche perché si tratta di un linguaggio molto utilizzato internamente ad AWS, e più in generale in Amazon. È ad esempio utilizzato da EC2, S3, CloudFront e DynamoDB.
Secondo Ken Exner, General Manager di AWS Developer Tools, è verosimile aspettarsi che il nuovo SDK per Rust trovi applicazioni principalmente nell'ambito della programmazione parallela, in cui non è raro dover gestire bug legati a race condition che possono portare a problemi con la gestione della memoria. Per quel che riguarda AWS, è inoltre possibile prevedere che alcuni carichi di lavoro attualmente gestiti in Python possano essere portati in Rust, proprio al fine di garantire una maggiore efficienza.
L'SDK di AWS per Rust è già disponibile in anteprima per gli sviluppatori, offrendo accesso a 288 servizi AWS. Non è stata definita alcuna data di rilascio ufficiale, ed è quindi possibile che le API definitive subiscano qualche ulteriore modifica.