{"id":53001,"date":"2019-11-21T00:00:00","date_gmt":"2019-11-20T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove"},"modified":"2020-02-18T14:00:50","modified_gmt":"2020-02-18T11:00:50","slug":"reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/news\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove","title":{"rendered":"Izdaja 19.3.0 virtualne ma\u0161ine GraalVM in implementacij Python, JavaScript, Ruby in R na njej","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Tvrtka Oracle <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/graal\/releases\/tag\/vm-19.3.0\">je objavilo<\/a><\/noindex> izdaja univerzalne virtualne ma\u0161ine <noindex><a rel=\"nofollow\" href=\"https:\/\/www.graalvm.org\/\">GraalVM 19.3.0<\/a><\/noindex>, ki podpira zagon aplikacij v JavaScript (Node.js), Python, Ruby, R, ter v vseh jezikih za JVM (Java, Scala, Clojure, Kotlin) in jezikih, za katere je mogo\u010de generirati bitcode LLVM (C, C++, Rust). Ve\u010dja 19.3 je razvr\u0161\u010dena med izdaje z dolgoro\u010dnim podporo (LTS) in <noindex><a rel=\"nofollow\" href=\"https:\/\/www.graalvm.org\/docs\/release-notes\/19_3\/\">se isti\u010de<\/a><\/noindex> podpora <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=49336\">JDK 11<\/a><\/noindex>, vklju\u010dno z mo\u017enostjo kompilacije Java kode v izvr\u0161ljive datoteke (GraalVM Native Image). Koda projekta <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/graal\/\">se distribuira<\/a><\/noindex> \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 GPLv2. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u044b \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 GraalVM \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439 \u044f\u0437\u044b\u043a\u043e\u0432 Python, JavaScript, Ruby \u0438 R &#8212;  <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graalpython\/\">GraalPython<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graaljs\/\">GraalJS<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/truffleruby\/\">TruffleRuby<\/a><\/noindex> in <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/fastr\/\">FastR<\/a><\/noindex>. <\/p>\n<p>GraalVM <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48472\">za\u0161\u010dito pred DDoS napadi.<\/a><\/noindex> JIT kompiler, ki lahko na hitro izvr\u0161uje v JVM kodo kateri koli skriptni jezik, vklju\u010dno z JavaScript, Ruby, Python in R, ter omogo\u010da zagon nativne kode v JVM, pretvorjene v bitcode LLVM. Orodja, ki jih nudi GraalVM, vklju\u010dujejo jezikovno neodvisen debugger, sistem profiliranja in analize porabe pomnilnika. GraalVM omogo\u010da ustvarjanje kombiniranih aplikacij s komponentami v razli\u010dnih jezikih, kar omogo\u010da dostop do objektov in tabel iz kode v drugih jezikih. Za jezike, osnovane na JVM, je na voljo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.graalvm.org\/docs\/reference-manual\/aot-compilation\/\">mo\u017enost<\/a><\/noindex> generiranje izvr\u0161nih datotek, skompiliranih v strojno kodo, ki se lahko izvajajo neposredno z minimalno porabo pomnilnika (upravljanje pomnilnika in nitmi je realizirano preko vklju\u010ditve okvira <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/graal\/tree\/master\/substratevm\">Substrate VM<\/a><\/noindex>).<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graaljs\/blob\/master\/CHANGELOG.md\">Spremembe v GraalJS<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> Zagotovljena je zdru\u017eljivost z Node.js 12.10.0;\n<li class=\"l\"> Privzeto so onemogo\u010dene nestandardne globalne lastnosti in funkcije:<br \/>\n       global (zamenjano z globalThis, za vrnitev je predvidena nastavitev js.global-property), performance (js.performance), print in printErr (js.print);<\/p>\n<li class=\"l\"> \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b Promise.allSettled \u0438 nullish coalescing proposal, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 ECMAScript 2020 (&#171;&#8212;js.ecmascript-version=2020&#187;);\n<li class=\"l\"> Posodobljene so odvisnosti ICU4J do 64.2, ASM do 7.1.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graalpython\/blob\/master\/CHANGELOG.md#version-1930\">Wijzigingen<\/a><\/noindex> v GraalPython:<\/p>\n<ul>\n<li class=\"l\"> Dodane so bile napovedi gc.{enable,disable,isenabled}, implementirani charmap_build, sys.hexversion in _lzma;\n<li class=\"l\"> Posodobljena standardna knji\u017enica Python 3.7.8;\n<li class=\"l\"> Dodana podpora za NumPy 1.16.4 in Pandas 0.25.0;\n<li class=\"l\"> Dodana podpora za timeit;\n<li class=\"l\">  socket.socket \u0434\u043e\u0432\u0435\u0434\u0451\u043d \u0434\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c &#171;graalpython -m http.server&#187; \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u043d\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 (\u0431\u0435\u0437 TLS) http-\u0440\u0435\u0441\u0443\u0440\u0441\u044b;\n<li class=\"l\"> Re\u0161ene so te\u017eave, povezane z izpisom objektov pandas.DataFrame,<br \/>\n    nepravilna obdelava tuples v bytes.startswith,<br \/>\n    s pomo\u010djo destrukturirajo\u010de dodelitve iteratorjev in uporabe dict.__contains__ za slovarje;<\/p>\n<li class=\"l\"> Dodana je podpora za ast.PyCF_ONLY_AST, kar <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graalpython\/issues\/53\">omogo\u010da<\/a><\/noindex> delovanje pytest;\n<li class=\"l\"> Dodana <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graalpython\/issues\/85\">podpora<\/a><\/noindex> PEP 498 (interpolaacija nizov v literale);\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graalvm\/graalpython\/issues\/43\">Izvedeno<\/a><\/noindex>  \u0444\u043b\u0430\u0433 &#171;&#8212;python.EmulateJython&#187; \u0434\u043b\u044f \u0438\u043c\u043f\u043e\u0440\u0442\u0430 JVM-\u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e Python-\u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 import \u0438 \u043b\u043e\u0432\u043b\u0438 JVM-\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438\u0437  \u043a\u043e\u0434\u0430 \u043d\u0430 Python;\n<li class=\"l\">  Izbolj\u0161ana je u\u010dinkovitost parserja, predpomnjenje napak,<br \/>\n      dostop do Python objektov iz JVM kode. Izbolj\u0161ani so bili rezultati pri testih uspe\u0161nosti za Python kodo in nativne raz\u0161iritve (izvr\u0161evanje nativnih raz\u0161iritev na vrhu llvm pomeni, da se bitni koda llvm posreduje GraalVM za JIT prevajanje).\n<\/ul>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/truffleruby\/releases\/tag\/vm-19.3.0\">Wijzigingen<\/a><\/noindex> v TruffleRuby:<\/p>\n<ul>\n<li class=\"l\"> Pri prevajanju nativnih raz\u0161iritev se zdaj uporablja vgrajeno orodje LLVM, ki ustvarja tako nativno kodo kot bitni kodo. To pomeni, da bi moralo ve\u010d nativnih raz\u0161iritev delovati brez te\u017eav, kar omogo\u010da re\u0161itev ve\u010dine te\u017eav pri povezovanju;\n<li class=\"l\"> Lo\u010dena namestitev LLVM za namestitev nativnih raz\u0161iritev v TruffleRuby;\n<li class=\"l\"> Za namestitev C++ raz\u0161iritev na TruffleRuby ni ve\u010d potrebna namestitev libc++ in libc++abi;\n<li class=\"l\">    Licenca je posodobljena na EPL 2.0\/GPL 2.0\/LGPL 2.1, kot pri nedavnem JRuby;\n<li class=\"l\"> Dodana je podpora za opcijske argumente v GC.stat;\n<li class=\"l\"> Uvedena je metoda Kernel#load z ovitkom in Kernel#spawn z :chdir;\n<li class=\"l\"> Dodana je rb_str_drop_bytes, ki je zanimiva, ker jo uporablja OpenSSL;\n<li class=\"l\">    Dodane so raz\u0161iritve predname\u0161\u010denih gem-ov, potrebne za rails new v Rails 6;\n<li class=\"l\"> Za prevajanje nativnih raz\u0161iritev se uporabljajo zastavice, kot v MRI;\n<li class=\"l\"> Vnesene so optimizacije zmogljivosti in zmanj\u0161ana poraba pomnilnika.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/fastr\/releases\/tag\/vm-19.3.0\">Wijzigingen<\/a><\/noindex> v FastR:<\/p>\n<ul>\n<li class=\"l\"> Zagotovljena je zdru\u017eljivost z R 3.6.1;\n<li class=\"l\"> Dodana je osnovna podpora za izvajanje nativnih raz\u0161iritev, ki temeljijo na LLVM. Pri gradnji nativnih paketov R je FastR konfiguriran za uporabo vgrajenega orodja GraalVM LLVM. Rezultantni binarni datoteki bosta vsebovala tako nativno kodo kot LLVM bitni kodo.\n<p>Predname\u0161\u010deni paketi so prav tako zgrajeni na ta na\u010din.<br \/>\n FastR \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u043a\u043e\u0434 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d \u0441 \u043e\u043f\u0446\u0438\u0435\u0439 &#171;&#8212;R.BackEnd=llvm&#187;, \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0438\u0442\u043a\u043e\u0434. LLVM \u0431\u044d\u043a\u044d\u043d\u0434 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 R \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044f &#171;&#8212;R.BackEndLLVM=pkg1,pkg2&#187;. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435  \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0432\u0441\u0451 \u043d\u0430\u0437\u0430\u0434, \u0432\u044b\u0437\u0432\u0430\u0432 fastr.setToolchain(&#171;native&#187;) \u0438\u043b\u0438 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u043e\u0434\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0432 \u0444\u0430\u0439\u043b $FASTR_HOME\/etc\/Makeconf;<\/p>\n<li class=\"l\"> Ta razli\u010dica FastR se dobavlja brez knji\u017enic GCC runtime;\n<li class=\"l\"> Popravljene so bile pu\u0161\u010danje pomnilnika;\n<li class=\"l\"> Popravljene so bile te\u017eave pri obdelavi velikih vektorjev (&gt;1GB);\n<li class=\"l\"> Implementiran je grepRaw, a samo za fixed=T.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Izvor: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51906\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b GraalVM 19.3.0, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 JavaScript (Node.js), Python, Ruby, R, \u043b\u044e\u0431\u044b\u0445 \u044f\u0437\u044b\u043a\u0430\u0445 \u0434\u043b\u044f JVM (Java, Scala, Clojure, Kotlin) \u0438 \u044f\u0437\u044b\u043a\u0430\u0445, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0438\u0442\u043a\u043e\u0434 LLVM (C, C++, Rust). \u0412\u0435\u0442\u043a\u0430 19.3 \u043e\u0442\u043d\u0435\u0441\u0435\u043d\u0430 \u043a \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432 \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0441\u0440\u043e\u043a\u043e\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 (LTS) \u0438 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 JDK 11, \u0432 \u0442\u043e\u043c [&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-53001","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=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b\" \/>\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\/sl\/blog\/news\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\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\u0420\u0435\u043b\u0438\u0437 19.3.0 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b GraalVM \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439 Python, JavaScript, Ruby \u0438 R \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/news\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove\" \/>\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=\"2019-11-20T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:00:50+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\udd47Izdaja 19.3.0 virtualne naprave GraalVM ter implementacije Python, JavaScript, Ruby in R na njeni osnovi | ProHoster","description":"Podjetje Oracle je objavilo izdajanje univerzalne virtualne naprave","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/news\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","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\u0420\u0435\u043b\u0438\u0437 19.3.0 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b GraalVM \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439 Python, JavaScript, Ruby \u0438 R \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b","og:url":"https:\/\/prohoster.info\/sl\/blog\/news\/reliz-19-3-0-virtualnoj-mashiny-graalvm-i-realizatsij-python-javascript-ruby-i-r-na-eyo-osnove","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":"2019-11-20T21:00:00+00:00","article:modified_time":"2020-02-18T11:00:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53001","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":"2026-01-24 05:41:27","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:33:28","updated":"2026-01-24 05:41:27","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/53001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=53001"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/53001\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=53001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=53001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=53001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}