Fa'asa'olotoina o le gagana polokalame Crystal 1.2

O le faʻasalalauga o le Crystal 1.2 polokalame polokalame ua faʻasalalau, o loʻo taumafai le au atinaʻe e tuʻufaʻatasia le faʻaogaina o le atinaʻe i le gagana Ruby ma le maualuga o le faʻatinoga o le faʻatinoga o le gagana C. O le syntax a Crystal e latalata i, ae le fetaui atoatoa ma, Ruby, e ui o nisi polokalame Ruby e tamoe e aunoa ma se suiga. O le code compiler o loʻo tusia i Crystal ma tufatufaina i lalo o le laisene Apache 2.0.

E fa'aogaina e le gagana su'esu'ega fa'apitoa, fa'atino e aunoa ma le mana'omia ona fa'ailoa manino ituaiga o fesuiaiga ma metotia fa'aupuga i le code. O polokalame tioata e tu'ufa'atasia i faila e mafai ona fa'atinoina, fa'atasi ai ma macros e iloiloina ma fa'atupuina fa'ailoga ile taimi fa'aopoopo. I polokalame Crystal, e mafai ona faʻafesoʻotaʻi fusi o loʻo tusia i le C. O le faʻatusatusaina o le faʻatinoina o tulafono e faʻatinoina e faʻaaoga ai le upu "spawn", lea e mafai ai e oe ona faʻatautaia se galuega i tua i le asynchronous mode e aunoa ma le polokaina o le filo autu, i foliga o filo mama mama e taʻua o filo.

O le faletusi masani e maua ai se seti tele o galuega masani, e aofia ai meafaigaluega mo le faʻaogaina o le CSV, YAML, ma le JSON, vaega mo le fatuina o sapalai HTTP, ma le WebSocket lagolago. I le faagasologa o le atinaʻe, e faigofie le faʻaogaina o le "crystal play" poloaiga, lea e faʻatupuina ai se upega tafaʻilagi (localhost: 8080 e le mafai) mo le faʻaogaina o le code i le gagana Crystal.

Suiga autu:

  • Ua fa'aopoopoina le tomai e tu'u atu ai se vasega laiti o se vasega lautele i se elemene o se vasega matua. vasega Foo(T); vasega faai'u Pa(T) < Foo(T); pito x = Foo x = Pa
  • Ua mafai nei e Macros ona fa'aoga se fa'amaulalo e le amana'ia ai se tau i totonu o le matasele. {% mo _, v, i in {1 => 2, 3 => 4, 5 => 6} %} p {{v + i}} {% end %}
  • Faʻaopoopo le "file_exists?" Metotia i macros. e siaki le i ai o se faila.
  • Ua lagolagoina nei e le faletusi masani le 128-bit integers.
  • Fa'aopoopo Fa'asinomaga :: Mutable(T) module fa'atasi ai ma le fa'atinoina o galuega fa'atino mo fa'aputuga pei ole BitArray ma Deque. ba = BitArray.new(10) # ba = BitArray[0000000000] ba[0] = moni # ba = BitArray[1000000000] ba.rotate!(-1) # ba = BitArray[0100000000]
  • Fa'aopoopoina le XML::Node#namespace_definition method e aveese mai ai se igoa ole igoa mai le XML.
  • O le IO#write_utf8 ma le URI.encode metotia ua le toe faaaogaina ma e tatau ona sui i le IO#write_string ma URI.encode_path.
  • Lagolago mo le 32-bit x86 architecture ua siitia i le tulaga lona lua (ua le toe gaosia pusa ua saunia). O loʻo faʻatulagaina se fesiitaiga i le tulaga muamua o le lagolago mo le fausaga o le ARM64.
  • O loʻo faʻaauau pea galuega e faʻamautinoa ai le lagolago atoatoa mo le Windows platform. Fa'aopoopo le lagolago mo sockets Windows.
  • Ua faʻaopoopoina se afifi lautele mo macOS, o loʻo galue uma i luga o masini e iai le x86 processors ma luga o meafaigaluega ma le Apple M1 chip.

puna: opennet.ru

Faaopoopo i ai se faamatalaga