Crystal 0.34.0 yakaburitswa

Shanduro itsva yeCrystal yakasunungurwa, mutauro wakagadzirwa wepurogiramu neRuby syntax, iyo huru iyo inguva yekumhanya ne "built-in" chiitiko loop, umo mabasa ose eI / O ari asynchronous, kutsigirwa kwekuverengera (kureba). sezvainogoneswa nemureza panguva yekubatanidza) uye yakapusa uye iri nyore kushanda nemaraibhurari muC.

Kutanga neshanduro 0.34.0, mutauro unotanga zviri pamutemo kuenda kune yekutanga kuburitswa kwayo (kureva vhezheni 1.0).

Iyo vhezheni itsva yeCrystal inosanganisira shanduko dzinotevera uye kuvandudzwa mukurongeka kwekukosha:

  • Raibhurari itsva yekutema miti yawedzerwa kuAPI Logisi, iyo, kusiyana neyekare, inogona kutumira mameseji kune akasiyana backend uye kusefa aya meseji zvakasiyana zvichienderana ne "source".

  • Rudiments kubva kunyika ye C budiriro, Errno ΠΈ WinError, inoshandiswa kuI/O primitives, yave kuita chinhu chekare nekuda kwekusiyana kwehutungamiriri. IO::Kukanganisa (zvisinei, hapana anorambidza kushandisa Errno parizvino).

  • Yakabviswa otomatiki inotsiva imwe nil kubva kumushandisi nyaya/nguva/zvimwe. Izvi zvinoitirwa kudzivirira mugadziri kubva netsaona kusvetuka rimwe remapazi. apo painofananidzwa pamakesi ekumisikidza senge enums uye achipfuura nemhando kubva kuUnion. Zvichireva kuti, kodhi iyi haichashanda pasina kutsanangura imwezve apo (apo Char) kana mabasa mumwe- mapazi:

a = 1 || 'x' || "foo"
nyaya a
apo Int32
#…
apo String
#…
magumo

  • Compiler sarudzo disable_fashukira hazvichawanikwi. Pakuita mafashama, shandisa &+, &-, &* nzira.

  • Array#zadza ikozvino inobhururuka nekukurumidza kupfuura bara, nekuda kwekutsiva loop yakapusa neimwe memset iri nyore;

  • Maneja we shards (mapeji), anonzi, zvinokatyamadza, shards, ikozvino inoshandisa inokurumidza uye inoshanda zvakanyanya Molinillo dependency kugutsikana algorithm inowanikwa muCocoaPods (Swift) uye Builder (Ruby).

  • Yakawedzerwa rutsigiro LLVM 10, iyo mune dzidziso ichatipa kumwe kuwedzera mukugadzirwa, kugadzikana, nezvimwe.

... uye zvimwe zvakawanda, mumaonero angu, zvishoma zvakakosha kuvandudzwa.

Ndinoda kuziva kuti Crystal mutauro wakavakirwa paLLVM, iyo inokutendera kuti unyore zvikumbiro dzimwe nguva nekukurumidza, zviri nyore uye zvakapfupikiswa pane zvakadudzirwa "hama" dzayo, uye panguva imwechete kuwana bhinary inokurumidza kukurumidza semhedzisiro. Kuenzaniswa neGolang, inomira pachena nekuda kweiyo yakazara-yakazara OOP, tsigiro yemagetsi, uye yakapusa uye inonzwisisika syntax. Chinangwa chayo chakada kufanana neNim, asi panguva imwechete yakanyatso kutarisisa kushandiswa kunoshanda "pano uye ikozvino", nekuda kwaiyo ine mune yayo API arsenal akawanda akanyorwa zvakanaka, ari nyore uye emhando yepamusoro maturusi, anotsigirwa ne vagadziri vemutauro uye saka vakagadzikana kwazvo.

Source: linux.org.ru

Voeg