Crystal 0.34.0 hè statu liberatu

Una nova versione di Crystal hè stata liberata, una lingua di prugrammazione compilata cù sintassi Ruby, chì e caratteristiche principali sò runtime cù un ciclu di l'avvenimentu "custruitu", in quale tutte l'operazioni I / O sò asincrone, supportu per multithreading (finu à tempu). cum'è hè attivatu da una bandiera durante a compilazione) è un'operazione estremamente simplice è còmuda cù biblioteche in C.

Partendu da a versione 0.34.0, a lingua principia ufficialmente à marchjà versu a so prima liberazione vera (vale à dì a versione 1.0).

A nova versione di Crystal include i seguenti cambiamenti è migliurà in ordine di impurtanza:

  • Una nova biblioteca di logging hè stata aghjunta à l'API Cunnette, chì, à u cuntrariu di u vechju, pò mandà missaghji à diversi backends è filtrà sti missaghji in modu diversu secondu a "fonte".

  • Rudimenti da u mondu di u sviluppu C, Errnu и WinError, utilizatu per i primitivi I/O, sò diventati una cosa di u passatu grazia à a ghjerarchia di eccezzioni IO::Errore (in ogni modu, nimu ùn pruibisce ancu l'usu di Errno).

  • Eliminatu a sustituzione automatica di altru nil da l'operatore casu / quandu / altru. Questu hè fattu per impedisce à u sviluppatore di saltà accidentalmente una di e rami. quannu quandu currisponde à i casi deterministici cum'è enums è passanu per i tipi da Union. Vale à dì, simpricimenti, stu codice ùn funziona più senza specificà unu di più quannu (quandu Char) o compiti altru- rami:

a = 1 || 'x' || "fou"
casu a
quandu Int32
# ...
quandu String
# ...
fine

  • Opzione di compilatore disable_overflow ùn hè più dispunibule. Per operazioni di overflow, utilizate i metudi &+, &-, &*.

  • Array #fill avà vola più veloce di una bala, grazia à rimpiazzà u loop stupidu cù un memset simplice;

  • Manager di shards (pacchetti), chjamatu, paradossalmente, frammenti, avà usa l'algoritmu di satisfaczione di a dependenza di Molinillo più veloce è più efficau truvata in CocoaPods (Swift) è Builder (Ruby).

  • Supportu aghjuntu LLVM 10, chì in teoria ci darà qualchì aumentu di a produtividade, stabilità, etc.

... è assai altri, in u mo parè subjective, megliurenze menu significativu.

Vogliu nutà chì Crystal hè una lingua custruita nantu à LLVM, chì permette di scrive l'applicazioni à volte più veloce, più simplice è più cuncisu chì nantu à i so "fratelli" interpretati, è à u stessu tempu uttene un binariu abbastanza veloce. Comparatu à Golang, si distingue per u so OOP assolutamente cumpletu, u supportu per i generici, è una sintassi assai simplice è comprensibile. U so scopu hè largamente simile à Nim, ma à u stessu tempu hè chjaramente focu annantu à l'usu praticu "quì è avà", grazia à quale hà in u so arsenale API assai strumenti ben documentati, convenienti è d'alta qualità, supportati da u sviluppatori di lingua è dunque assai stabile.

Source: linux.org.ru

Add a comment