Útgáfa Go forritunarmálsins 1.15

Kynnt útgáfu forritunarmáls Fara 1.15, sem er þróað af Google með þátttöku samfélagsins sem blendingslausn sem sameinar mikla afköst samsettra tungumála við kosti forskriftarmála eins og auðveld ritun kóða, þróunarhraða og villuvörn. Verkefnakóði dreift af undir BSD leyfinu.

Setningafræði Go er byggð á kunnuglegum þáttum C tungumálsins með nokkrum lántökum frá Python tungumálinu. Tungumálið er frekar hnitmiðað en kóðinn er auðlesinn og auðskilinn. Go-kóði er settur saman í sjálfstæðar tvíundir keyrslur sem keyra innfæddar án þess að nota sýndarvél (sniður, kembiforrit og önnur undirkerfi til uppgötvunarvandamála eru samþætt sem runtime hluti), sem gerir þér kleift að ná frammistöðu sambærilegum við C forrit.

Verkefnið er upphaflega þróað með það fyrir augum að fjölþráða forritun og skilvirkan rekstur á fjölkjarna kerfum, þar á meðal að veita rekstraraðila aðferðum til að skipuleggja samhliða tölvuvinnslu og samspil milli samhliða framkvæmda aðferða. Tungumálið veitir einnig innbyggða vörn gegn ofúthlutuðum minnisblokkum og veitir möguleika á að nota sorphirðu.

Helstu nýjungarkynnt í Go 1.15 útgáfunni:

  • Vinna tengilsins hefur verið bætt verulega, bæði til að auka hraða vinnslunnar og draga úr minnisnotkun og í þá átt að einfalda kóðaviðhald. Þegar þau voru prófuð á stýrikerfum með ELF keyranlegu skráarsniði (Linux, FreeBSD, NetBSD, OpenBSD, Dragonfly, Solaris), var dæmigert sett af stórum Go forritum smíðað 20% hraðar og minnisnotkun minnkaði að meðaltali um 30%. Aukin framleiðni var möguleg með því að skipta yfir í nýtt hlutaskráarsnið og endurvinna innri stig til að auka samhliða vinnu. Innfæddi tengillinn er nú notaður sjálfgefið á linux/amd64 og linux/arm64 kerfum í "-buildmode=pie", sem krefst ekki lengur notkunar á C tengil.
  • Í keyrslutíma hefur dreifing lítilla hluta á kerfum með miklum fjölda örgjörvakjarna verið bætt verulega og leynd hefur minnkað. Ef um bilanir er að ræða birtast gildi með tölulegum og strengjategundum í stað þess að sýna heimilisfangið. Þegar SIGSEGV, SIGBUS og SIGFPE merki eru send til Go forrits, þar sem ekki er til staðar os/merki. Látið stjórnanda vita, mun forritið hætta með staflaúttak (áður var hegðunin ófyrirsjáanleg).
  • Þjálfarinn hefur verið fínstilltur til að minnka stærð myndaðra keyrsluskráa um að meðaltali 5% með því að stöðva innlimun sumra lýsigagna fyrir sorphirðuna og árásargjarnari hreinsun á ónotuðum lýsigögnum.
  • „-spectre“ fánanum hefur verið bætt við þýðandann og samsetninguna til að virkja vörn gegn árásum í Spectre flokki (fyrir flest forrit er þetta ekki krafist; aðeins er hægt að réttlæta það að virkja valkostinn fyrir nokkur mjög sérstök tilvik).
  • Í X.509 vottorðum hefur reiturinn CommonName verið úreltur, sem er ekki lengur meðhöndlaður sem hýsingarnafn ef reitinn Valefnisnöfn vantar.
  • "fara" skipunin í GOPROXY umhverfisbreytunni getur nú skráð marga umboð, aðskilin með kommu eða "|". Ef fyrsti umboðsmaðurinn á listanum skilar villu (404 eða 410), þá verður reynt að hafa samband í gegnum annað umboðið o.s.frv.
  • Dýralæknishjálpin hefur bætt við viðvörun um tilraun til að breyta úr streng(x) ef "x" er heiltölutegund önnur en rúna eða bæti.
  • "-gnu" fánanum hefur verið bætt við objdump tólið til að styðja við að taka í sundur GNU assembler setningafræði.
  • Nýr pakki bætt við tími/tzdata, sem gerir þér kleift að samþætta gagnagrunn með tímabeltisgögnum í forritið.
  • Úr frumtextum og skjölum fjarlægð setningarnar hvítlisti/svartur listi og herra/þræll, sem nú er skipt út fyrir "leyfislista", "blokkunarlista", "ferli", "pty", "proc" og "stjórna".
  • Stór hluti minniháttar endurbóta hefur verið gerðar á staðlaða bókasafninu.
  • Bætti við stuðningi við OpenBSD 6.7 í stillingum GOARCH=arm og GOARCH=arm64 (áður voru aðeins GOARCH=386 og GOARCH=amd64 studdar).
  • Þróun 64-bita RISC-V vettvangsins (GOOS=linux, GOARCH=riscv64) hélt áfram.
  • Fyrir 32-bita x86 kerfi mun næsta útgáfa hækka lágmarkskerfiskröfur - aðeins örgjörvar með SSE2 verða áfram studdir. Til að smíða í GOARCH=386 ham þarftu að minnsta kosti Intel Pentium 4 (komið út árið 2000) eða AMD Opteron/Athlon 64 (komið út árið 2003).

Heimild: opennet.ru

Bæta við athugasemd