{"id":77153,"date":"2020-04-08T01:43:13","date_gmt":"2020-04-07T23:43:13","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vyshel-crystal-0-34-0"},"modified":"2020-04-08T01:43:13","modified_gmt":"2020-04-07T23:43:13","slug":"vyshel-crystal-0-34-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/no\/blog\/news\/vyshel-crystal-0-34-0","title":{"rendered":"Crystal 0.34.0 er utgitt","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Den nye versjonen av Crystal, et kompilert programmeringsspr\u00e5k med Ruby-syntaks, har som hovedfunksjoner en runtime med en \u00abinnebygd\u00bb event loop der alle I\/O-operasjoner er asynkrone, st\u00f8tte for flertr\u00e5ding (som for \u00f8yeblikket aktiveres med en flagg ved kompilering) og en ekstremt enkel og brukervennlig m\u00e5te \u00e5 jobbe med biblioteker skrevet i C.<\/p>\n<p>Fra og med versjon 0.34.0 begynner spr\u00e5ket \u00e5 bevege seg med faste skritt mot sin f\u00f8rste ekte utgivelse (dvs. versjon 1.0).<\/p>\n<p>I den nye versjonen av Crystal kan vi merke oss f\u00f8lgende endringer og forbedringer rangert etter viktighet:<\/p>\n<ul>\n<li>\n<p>Det er lagt til et nytt logger-API, <strong>Logg<\/strong>, som, i motsetning til den gamle, kan sende meldinger til forskjellige backend-systemer og filtrere disse meldingene ulikt avhengig av \u00abkilden\u00bb.<\/p>\n<\/li>\n<li>\n<p>Rester fra C-utviklingsverdenen, <strong>Errno<\/strong> og <strong>WinError<\/strong>, som ble brukt for primitive inn- og utdataoperasjoner, er p\u00e5 vei ut takket v\u00e6re unntakshierarkiet <strong>IO::Error<\/strong> (men ingen har forbudt \u00e5 bruke Errno enn\u00e5).<\/p>\n<\/li>\n<li>\n<p>Automatisk ifylling av else nil fra operatoren <strong>case\/when\/else<\/strong>er fjernet. Dette er gjort for \u00e5 unng\u00e5 at utvikleren tilfeldig overser en av tilfellene <strong>when<\/strong> ved matching av deterministiske tilfeller som enums og traversering av typer fra Union. Med andre ord, kort sagt, slik kode vil ikke fungere lenger uten \u00e5 spesifisere enda en <strong>when<\/strong> (when Char) eller tilordne <strong>else<\/strong>-grenen:<\/p>\n<\/li>\n<\/ul>\n<p>a = 1 || 'x' || \"foo\"<br \/>\ncase a<br \/>\nwhen Int32<br \/>\n  # &#8230;<br \/>\nwhen String<br \/>\n  # &#8230;<br \/>\nend<\/p>\n<ul>\n<li>\n<p>Kompilatoralternativet <strong>disable_overflow<\/strong> er ikke lenger tilgjengelig. For operasjoner med overflow, bruk metodene &amp;+, &amp;-, &amp;*.<\/p>\n<\/li>\n<li>\n<p><strong>Array#fill<\/strong> n\u00e5 flyr raskere enn en kule, takket v\u00e6re at den kl\u00f8nete l\u00f8kken er byttet ut med en enkel memset;<\/p>\n<\/li>\n<li>\n<p>Shard-manageren (pakker), som p\u00e5 en merkelig m\u00e5te kalles <strong>shards<\/strong>, bruker n\u00e5 en raskere og mer effektiv avhengighetsl\u00f8sning algoritme, Molinillo, inspirert av CocoaPods (Swift) og Builder (Ruby).<\/p>\n<\/li>\n<li>\n<p>St\u00f8tte lagt til <strong>LLVM 10<\/strong>, som i teorien vil gi oss en viss \u00f8kning i ytelse, stabilitet, osv.<\/p>\n<\/li>\n<\/ul>\n<p>... og mange andre, som etter mitt subjektive syn er mindre vesentlige forbedringer.<\/p>\n<p>Det skal bemerkes at Crystal er et spr\u00e5k bygget p\u00e5 LLVM, som gj\u00f8r det mulig \u00e5 skrive applikasjoner b\u00e5de raskere, enklere og mer kompakt enn p\u00e5 dets tolkede \u00abslektninger\u00bb, samtidig som det gir ut en ganske hurtig bin\u00e6rfil. I forhold til Golang skiller det seg ut med fullverdig OOP, st\u00f8tte for generiske typer og et ekstremt enkelt og forst\u00e5elig syntaks. Det ligner mye p\u00e5 Nim i sin hensikt, men er \u00e5penbart rettet mot praktisk bruk \u00abher og n\u00e5\u00bb, noe som gir det et API-v\u00e5penarsenal av mange godt dokumenterte, brukervennlige og kvalitetsverkt\u00f8y, st\u00f8ttet av spr\u00e5kets utviklere og derfor ganske stabile.<\/p>\n<p>Kilde: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"http:\/\/www.linux.org.ru\/news\/development\/15627605\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Crystal, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c Ruby, \u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e &mdash; \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u0441 &laquo;\u0432\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c&raquo; event loop&rsquo;\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 (\u043f\u043e\u043a\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433\u043e\u043c \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438) \u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0438 \u0443\u0434\u043e\u0431\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438 \u043d\u0430 \u0421\u0438. \u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u0432\u0435\u0440\u0441\u0438\u0438 0.34.0, \u044f\u0437\u044b\u043a \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0442\u0432\u0451\u0440\u0434\u043e\u0439 \u043f\u043e\u0441\u0442\u0443\u043f\u044c\u044e \u0434\u0432\u0438\u0433\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e [&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-77153","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Crystal, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c Ruby, \u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u2014 \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u0441 \u00ab\u0432\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u00bb event loop\u2019\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430.\" \/>\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\/no\/blog\/news\/vyshel-crystal-0-34-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"nn_NO\" \/>\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\u0412\u044b\u0448\u0435\u043b Crystal 0.34.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Crystal, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c Ruby, \u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u2014 \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u0441 \u00ab\u0432\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u00bb event loop\u2019\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/no\/blog\/news\/vyshel-crystal-0-34-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-04-07T23:43:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-07T23:43:13+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\udd47Crystal 0.34.0 er lansert | ProHoster","description":"En ny versjon av Crystal, et kompilert programmeringsspr\u00e5k med Ruby-syntaks, har blitt lansert. Hovedfunksjonene er et runtime med en \"innebygd\" event loop der alle inndata- og utdataoperasjoner er asynkrone, st\u00f8tte.","canonical_url":"https:\/\/prohoster.info\/no\/blog\/news\/vyshel-crystal-0-34-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nn_NO","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\u0412\u044b\u0448\u0435\u043b Crystal 0.34.0 | ProHoster","og:description":"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Crystal, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c Ruby, \u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u2014 \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u0441 \u00ab\u0432\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u00bb event loop\u2019\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430.","og:url":"https:\/\/prohoster.info\/no\/blog\/news\/vyshel-crystal-0-34-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-04-07T23:43:13+00:00","article:modified_time":"2020-04-07T23:43:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"77153","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 12:34:50","updated":"2022-10-02 17:23:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/77153","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/comments?post=77153"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/77153\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/media?parent=77153"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/categories?post=77153"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/tags?post=77153"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}