{"id":55312,"date":"2020-01-17T00:00:00","date_gmt":"2020-01-16T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/uvidel-svet-gnu-guile-3-0"},"modified":"2020-02-18T14:03:25","modified_gmt":"2020-02-18T11:03:25","slug":"uvidel-svet-gnu-guile-3-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/news\/uvidel-svet-gnu-guile-3-0","title":{"rendered":"Ieraudz\u012bjis gaismu GNU Guile 3.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/lists.gnu.org\/archive\/html\/info-gnu\/2020-01\/msg00003.html\">Notika<\/a><\/noindex> izlaidums <noindex><a rel=\"nofollow\" href=\"http:\/\/www.gnu.org\/software\/guile\/guile.html\">GNU Guile 3.0<\/a><\/noindex>, br\u012bv\u0101s implement\u0101cijas funkcion\u0101l\u0101 programm\u0113\u0161anas valoda <noindex><a rel=\"nofollow\" href=\"http:\/\/ru.wikipedia.org\/wiki\/Scheme\">Scheme<\/a><\/noindex>, kas atbalsta iesp\u0113ju iek\u013caut kodu cit\u0101s programm\u0113\u0161anas valod\u0101s. Guile var tikt izmantots k\u0101 valoda papla\u0161in\u0101jumu izstr\u0101dei, konfigur\u0101cijas defin\u0113\u0161anai vai komponentu izstr\u0101dei, kas savieno da\u017e\u0101dus primit\u012bvus, ko nodro\u0161ina lietojumprogramma. Guile ir ofici\u0101l\u0101 papla\u0161in\u0101jumu izstr\u0101des valoda GNU oper\u0113t\u0101jsist\u0113mai. <\/p>\n<p>Guile pamat\u0101 ir efekt\u012bva virtu\u0101l\u0101 ma\u0161\u012bna, kas izpilda p\u0101rn\u0113s\u0101jamu instrukciju kopumu, ko \u0123ener\u0113 \u012bpa\u0161s optimiz\u0113jo\u0161s kompilators. Guile virtu\u0101l\u0101 ma\u0161\u012bna viegli integr\u0113jas ar lietojumprogrammu kodu C un C++ valod\u0101s. Papildus Scheme valodai, kurai ir \u012bstenota specifik\u0101ciju atbalsts <noindex><a rel=\"nofollow\" href=\"http:\/\/www.schemers.org\/Documents\/Standards\/R5RS\/\">R5RS<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/www.r6rs.org\/\">R6RS<\/a><\/noindex> un <noindex><a rel=\"nofollow\" href=\"https:\/\/small.r7rs.org\/\">R7RS<\/a><\/noindex>, Guile projekt\u0101 ir izstr\u0101d\u0101ti kompilatori ar\u012b cit\u0101m valod\u0101m, t\u0101d\u0101m k\u0101 ECMAScript, Emacs Lisp un Lua (izstr\u0101des proces\u0101). Iek\u013cauta modu\u013cu bibliot\u0113ka, kur\u0101 ir \u012bstenotas tipiskas pakalpojumu funkcijas, piem\u0113ram, darbs ar HTTP protokolu, XML pars\u0113\u0161ana un objektorient\u0113tas programm\u0113\u0161anas meto\u017eu izmanto\u0161ana.<\/p>\n<p>Galven\u0101 jaun\u0101 funkcija GNU Guile 3.0 ir JIT kompilatora par\u0101d\u012b\u0161an\u0101s, papildus iepriek\u0161 pied\u0101v\u0101tajiem interpretera un kompilatora p\u0101rsvar\u0101 uz bytecode, ko izpilda \u012bpa\u0161a virtu\u0101l\u0101 ma\u0161\u012bna, pievienojot to lietojumprogrammai bibliot\u0113kas form\u0101. JIT \u013cauj \u0123ener\u0113t ma\u0161\u012bnu kodu uzreiz un b\u016btiski pa\u0101trina Guile lietojumprogrammu izpildi (m\u0113\u0123in\u0101jumi r\u0101da pa\u0101trin\u0101jumu l\u012bdz 4 reiz\u0113m). JIT kompilators atbalsta darb\u012bbu arhitekt\u016br\u0101s x86-64, i686, ARMv7 un AArch64.<\/p>\n<p>Da\u017ei no citiem uzlabojumiem:<\/p>\n<ul>\n<li class=\"l\"> Atbalsts jaunajai Scheme valodas specifik\u0101cijai <noindex><a rel=\"nofollow\" href=\"https:\/\/small.r7rs.org\/\">R7RS<\/a><\/noindex> un taj\u0101 noteiktajiem bibliot\u0113ku modu\u013ciem;\n<li class=\"l\"> Guile virtu\u0101laj\u0101 ma\u0161\u012bn\u0101 ir \u012bstenota zemo l\u012bme\u0146u bytecode atbalsts, kas \u013cauj veikt papla\u0161in\u0101tas optimiz\u0101cijas;\n<li class=\"l\"> Atbalsts iek\u0161\u0113jo define-defin\u0113jumu un izteiksmju apvieno\u0161anai (piem\u0113ram, &#171;(define _ (begin (foo) #f))&#187;);\n<li class=\"l\"> Ieteikta apvienota strukt\u016br\u0113tu datu tipu (&#171;records&#187;) realiz\u0101cija;\n<li class=\"l\"> P\u0101rstr\u0101d\u0101ti iz\u0146\u0113mumu apstr\u0101des primit\u012bvi (throw un catch);\n<li class=\"l\"> Defin\u0113ti saites papla\u0161in\u0101tajam sintaksei &#171;else&#187;, &#171;=&gt;&#187;, &#171;&#8230;&#187; un &#171;_&#187;;\n<li class=\"l\"> HTTP piepras\u012bjumos, HTTP GET un cit\u0101s saist\u012btaj\u0101s t\u012bmek\u013ca klientu proced\u016br\u0101s ir pievienota iesp\u0113ja lejupiel\u0101d\u0113t saturu pa \u0161ifr\u0113tu sakaru kan\u0101lu, izmantojot TLS ar pareizu sertifik\u0101tu p\u0101rbaudi.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Avots: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52203\">opennet.lv<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 GNU Guile 3.0, \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Scheme, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u044f\u0437\u044b\u043a\u0430\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. Guile \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u043a\u0430\u043a \u044f\u0437\u044b\u043a \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0441\u0432\u044f\u0437\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c. Guile \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c \u044f\u0437\u044b\u043a\u043e\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b GNU. \u041e\u0441\u043d\u043e\u0432\u0443 Guile [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-55312","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 GNU.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/lv\/blog\/news\/uvidel-svet-gnu-guile-3-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0432\u0438\u0434\u0435\u043b \u0441\u0432\u0435\u0442 GNU Guile 3.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 GNU.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/news\/uvidel-svet-gnu-guile-3-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-16T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Ir izn\u0101cis GNU Guile 3.0 | ProHoster","description":"Ir izlaists GNU.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/news\/uvidel-svet-gnu-guile-3-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0432\u0438\u0434\u0435\u043b \u0441\u0432\u0435\u0442 GNU Guile 3.0 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 GNU.","og:url":"https:\/\/prohoster.info\/lv\/blog\/news\/uvidel-svet-gnu-guile-3-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-16T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55312","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:46:28","updated":"2022-10-04 18:27:48","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/55312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=55312"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/55312\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=55312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=55312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=55312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}