Ieraudzījis gaismu GNU Guile 3.0

Notika izlaidums GNU Guile 3.0, brīvās implementācijas funkcionālā programmēšanas valoda Scheme, kas atbalsta iespēju iekļaut kodu citās programmēšanas valodās. Guile var tikt izmantots kā valoda paplašinājumu izstrādei, konfigurācijas definēšanai vai komponentu izstrādei, kas savieno dažādus primitīvus, ko nodrošina lietojumprogramma. Guile ir oficiālā paplašinājumu izstrādes valoda GNU operētājsistēmai.

Guile pamatā ir efektīva virtuālā mašīna, kas izpilda pārnēsājamu instrukciju kopumu, ko ģenerē īpašs optimizējošs kompilators. Guile virtuālā mašīna viegli integrējas ar lietojumprogrammu kodu C un C++ valodās. Papildus Scheme valodai, kurai ir īstenota specifikāciju atbalsts R5RS, R6RS un R7RS, Guile projektā ir izstrādāti kompilatori arī citām valodām, tādām kā ECMAScript, Emacs Lisp un Lua (izstrādes procesā). Iekļauta moduļu bibliotēka, kurā ir īstenotas tipiskas pakalpojumu funkcijas, piemēram, darbs ar HTTP protokolu, XML parsēšana un objektorientētas programmēšanas metožu izmantošana.

Galvenā jaunā funkcija GNU Guile 3.0 ir JIT kompilatora parādīšanās, papildus iepriekš piedāvātajiem interpretera un kompilatora pārsvarā uz bytecode, ko izpilda īpaša virtuālā mašīna, pievienojot to lietojumprogrammai bibliotēkas formā. JIT ļauj ģenerēt mašīnu kodu uzreiz un būtiski paātrina Guile lietojumprogrammu izpildi (mēģinājumi rāda paātrinājumu līdz 4 reizēm). JIT kompilators atbalsta darbību arhitektūrās x86-64, i686, ARMv7 un AArch64.

Daži no citiem uzlabojumiem:

  • Atbalsts jaunajai Scheme valodas specifikācijai R7RS un tajā noteiktajiem bibliotēku moduļiem;
  • Guile virtuālajā mašīnā ir īstenota zemo līmeņu bytecode atbalsts, kas ļauj veikt paplašinātas optimizācijas;
  • Atbalsts iekšējo define-noteikumu un izteiksmju kombinēšanai (piemēram, «(define _ (begin (foo) #f))»);
  • Ierosināta vienota struktūrveida datu tipa («records») īstenošana;
  • Pārstrādāti izņēmumu apstrādes primitīvi (throw un catch);
  • Noteikti saistījumi paplašinātajai sintaksei «else», «=>», «…» un «_»;
  • HTTP pieprasījumos, HTTP GET un citās saistītajās tīmekļa klientu procedūrās ir pievienota iespēja lejupielādēt saturu pa šifrētu sakaru kanālu, izmantojot TLS ar pareizu sertifikātu pārbaudi.

Avots: opennet.lv

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster