Sakin yaren shirye-shiryen Go 1.18

An gabatar da sakin yaren shirye-shirye na Go 1.18, wanda Google ke haɓakawa tare da haɗin gwiwar al'umma a matsayin mafita mai gauraya wanda ya haɗu da babban aiki na harsashi da aka haɗa tare da fa'idodin rubuce-rubucen harsuna kamar sauƙi na lambar rubutu. , saurin haɓakawa da kariyar kuskure. Ana rarraba lambar aikin a ƙarƙashin lasisin BSD.

Rubutun Go's ya dogara ne akan abubuwan da aka saba na yaren C tare da wasu aro daga yaren Python. Harshen yana da taƙaitaccen bayani, amma lambar tana da sauƙin karantawa da fahimta. An haɗa lambar Go zuwa cikin fayilolin aiwatarwa na binary kaɗai waɗanda ke gudana ta asali ba tare da yin amfani da injin kama-da-wane ba (profiling, debugging modules, da sauran tsarin gano matsala na lokacin aiki an haɗa su azaman kayan aikin lokaci), wanda ke ba da damar yin aiki kwatankwacin shirye-shiryen C.

An fara haɓaka aikin tare da sa ido kan shirye-shirye masu zare da yawa da ingantaccen aiki akan tsarin maɓalli da yawa, gami da samar da hanyoyin da aka aiwatar a matakin ma'aikaci don tsara lissafin layi ɗaya da hulɗa tsakanin hanyoyin aiwatar da layi ɗaya. Har ila yau, harshen yana ba da kariyar ginanniyar kariya daga wuce gona da iri na ƙayyadaddun tubalan ƙwaƙwalwar ajiya kuma yana ba da damar yin amfani da mai tara shara.

Sabuwar sihirin yana ƙara goyan bayan ayyukan da aka samu da kuma nau'ikan masu haɓaka), tare da taimakon wanda mai haɓakawa na iya ayyana da amfani da ayyukan da aka tsara don aiki tare da nau'ikan da yawa. Hakanan yana yiwuwa a yi amfani da musaya don ƙirƙirar nau'ikan haɗin gwiwa waɗanda ke kan nau'ikan bayanai da yawa. Ana aiwatar da goyan baya ga nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan ana aiwatar da su ba tare da karya daidaitawar baya tare da lambar da ke akwai ba. // Jimlar saita dabi'u, yana aiki don int64 da nau'ikan float64 func SumIntsOrFloats[K kwatankwacin, V int64 | Taswirar [{var v) v {For S v for _, v} Sashin S {s {s _ float64} func SumNumbers [K kwatankwacin, Lamba V] (m taswira [K] V) V {var s V don _, v := kewayon m {s += v} dawowa s}

Sauran ingantawa:

  • An haɗa abubuwan amfani don gwajin ƙima a cikin daidaitaccen kayan aiki. A lokacin gwaji mai ban mamaki, ana samar da rafi na duk yuwuwar haɗakar bayanan shigar da bayanai kuma ana yin rikodin gazawar yuwuwar lokacin sarrafa su. Idan jeri ya yi karo ko bai dace da martanin da ake tsammani ba, to wannan hali na iya nuna kwaro ko rauni.
  • Ƙara goyon baya don wurare masu yawa na zamani, yana ba ku damar aiwatar da umarni a kan nau'i-nau'i da yawa a lokaci ɗaya, yana ba ku damar ginawa da gudanar da lamba a lokaci guda a cikin nau'i-nau'i masu yawa.
  • An yi ingantaccen ingantaccen aiki don tsarin da ya danganci Apple M1, ARM64 da na'urori masu sarrafawa na PowerPC64. An ba da damar yin amfani da rijistar maimakon tari don ƙaddamar da muhawara zuwa ayyuka da dawo da sakamakon. Ingantacciyar kwancen madaukai na layi ta mai tarawa. Nau'in dubawa a cikin mai tarawa an sake fasalin gaba ɗaya. Wasu gwaje-gwajen suna nuna haɓakar 20% na aikin lambar idan aka kwatanta da sakin da ya gabata, amma haɗawa kanta yana ɗaukar kusan 15% tsayi.
  • A cikin lokacin aiki, an ƙara haɓakar dawo da ƙwaƙwalwar ajiyar da aka saki zuwa tsarin aiki kuma an inganta aikin mai tattara shara, wanda halinsa ya zama mai iya faɗi.
  • Sabbin fakitin net/netip da debug/buildinfo an ƙara su zuwa daidaitaccen ɗakin karatu. An kashe tallafi don TLS 1.0 da 1.1 ta tsohuwa a lambar abokin ciniki. Tsarin crypto/x509 ya daina sarrafa takaddun shaida da aka sanya hannu ta amfani da SHA-1 hash.
  • An haɓaka buƙatun mahalli a cikin Linux; don yin aiki, yanzu kuna buƙatar samun kernel Linux na aƙalla sigar 2.6.32. A cikin saki na gaba, ana sa ran canje-canje iri ɗaya don FreeBSD (za a daina goyan bayan reshen FreeBSD 11.x) kuma aƙalla FreeBSD 12.2 za a buƙaci yin aiki.

source: budenet.ru

Add a comment