Eisiúint na teanga ríomhchlárúcháin Crystal 1.5

Foilsíodh scaoileadh na teanga ríomhchlárúcháin Crystal 1.5, agus tá na forbróirí ag iarraidh áisiúlacht na forbartha sa teanga Ruby a chomhcheangal le tréith ardfheidhmíochta iarratais na teanga C. Tá comhréir Crystal gar do Ruby, ach níl sé ag luí go hiomlán leis, cé go ritheann roinnt clár Ruby gan mhodhnú. Tá an cód tiomsaitheora scríofa i Crystal agus a dháileadh faoi cheadúnas Apache 2.0.

Úsáideann an teanga seiceáil cineál statach, a chuirtear i bhfeidhm gan gá na cineálacha athróg agus argóintí modh a shonrú go sainráite sa chód. Déantar cláir chriostail a thiomsú i gcomhaid inrite, agus déantar macraí a mheasúnú agus gintear cód ag am tiomsaithe. I gcláir Crystal, is féidir ceangail scríofa i C a nascadh. Déantar comhthreomhaireacht ar fhorghníomhú an chóid ag baint úsáide as an eochairfhocal “sceite”, a ligeann duit tasc cúlra a rith go neamhshioncronach, gan bac a chur ar an bpríomhshnáithe, i bhfoirm snáitheanna éadroma ar a dtugtar snáithíní.

Soláthraíonn an leabharlann chaighdeánach sraith mhór feidhmeanna coitianta, lena n-áirítear uirlisí chun CSV, YAML, agus JSON a phróiseáil, comhpháirteanna chun freastalaithe HTTP a chruthú, agus tacaíocht WebSocket. Le linn an phróisis forbartha, tá sé áisiúil an t-ordú "súgradh criostail" a úsáid, a ghineann comhéadan gréasáin (localhost: 8080 de réir réamhshocraithe) chun cód a fhorghníomhú go hidirghníomhach sa teanga Crystal.

Athruithe móra:

  • Tá seic curtha ag an tiomsaitheoir le haghaidh comhfhreagras ainmneacha argóintí i gcur i bhfeidhm modh teibí agus ina shainiú. Má tá neamhréir ainm ann, eisítear rabhadh anois: aicme teibí FooAbstract teibí def foo(uimhir : Int32) : Nialais aicme foirceann Foo < FooAbstract def foo(ainm : Int32) : Nialais p ainm deireadh deireadh 6 | def foo(ainm : Int32) : Nialas ^— Rabhadh: freagraíonn paraiméadar suímh 'ainm' do pharaiméadar 'líon' an mhodha sáraithe FooAbstract#foo(uimhir : Int32), a bhfuil ainm difriúil aige agus a d'fhéadfadh tionchar a bheith aige ar an argóint ainmnithe
  • Nuair a shanntar argóint do mhodh neamhchlóscríofa do luach athróige, tá an argóint teoranta anois do chineál na hathróige sin. class Foo @x : Int64 def initialize(x) @x = x # paraiméadar x clóscríofa @x deireadh deireadh
  • Ligeann sé duit nótaí a chur le paraiméadair modhanna nó macraí. def foo(@[B'fhéidir gan úsáid] x); deireadh # OK
  • Tacaíocht bhreise maidir le tairisigh a úsáid mar innéacsanna agus ainmneacha i dupaí. KEY = "s" foo = {s: "Teaghrán", n: 0} cuireann foo[KEY].size
  • Cuireadh modhanna nua Comhad#delete leis an API Comhad chun comhaid agus eolairí a scriosadh. agus Dir#delete?, a fhilleann bréagach má tá an comhad nó an t-eolaire in easnamh.
  • Neartaíodh cosaint an mhodha File.tempfile, rud nach gceadaíonn anois carachtair nialasach sna línte atá mar ainm an chomhaid.
  • Athróg timpeallachta breise NO_COLOR, a dhíchumasaíonn aibhsiú datha in aschur tiomsaitheora agus ateangaire.
  • Tá feabhas suntasach tagtha ar an obair sa mhodh ateangaireachta.

Foinse: oscailtenet.ru

Add a comment