<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Компания Microsoft опубликовала реализацию Lua VM, написанну...</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html</link>
    <description>Компания Microsoft подготовила (https://github.com/Azure/golua) новый движок для исполнения сценариев на языке Lua. Ключевой особенностью представленного Lua VM является реализация на языке Go. В движке поддерживается синтаксис Lua 5.3, но пока отмечаются отдельные несовместимости (непример, отсутствует поддержка сопрограмм) и требуется дополнительная стабилизация API. Код проекта открыт (https://github.com/Azure/golua) под лицензией MIT, которая также используется проектом Lua для распространения кода основного интерпретатора, написанного на языке Си.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Напомним, что язык Lua получил основное распространение в качестве встраиваемого языка (например, для определения конфигурации или для написания расширений). Lua комбинирует простой процедурный синтаксис с мощными возможностями описания данных через использование ассоциативных массивов и расширяемой семантики языка. В Lua используется динамическая типизация, языковые конструкции преобразуются в байт-код, выполняющийся поверх регистровой виртуальной машины</description>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (hdkfhsfhsiosf)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#172</link>
    <pubDate>Fri, 23 Nov 2018 06:19:36 GMT</pubDate>
    <description>Как вариант - написать внешний dll модуль на С/C#. Примеры есть в книге Иерусалимского и на сайте quikluacsharp.ru. Ещё вариант - через lua socket и json реализовать RPC. Я так связывал брокерский терминал quik c встроенным яп qlua (расширение lua 5.1) c luajit. C json/REST/http интерфейсом можно внешние модули на любом языке написать.&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (hdkfhsfhsiosf)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#171</link>
    <pubDate>Fri, 23 Nov 2018 05:54:33 GMT</pubDate>
    <description>уже есть https://github.com/gijit/gi&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#170</link>
    <pubDate>Fri, 23 Nov 2018 03:49:22 GMT</pubDate>
    <description>Так lua тоже динамически типизируемый. Annotate очень интересная библиотека. Там добавляются декоратором doc-строки для проверки типов аргументов функции, по которой генерируется конечный автомат. На luajit работает быстрее чем check type, реализованный на си в виде dll. Да, ещё раздражает обилие locate и end в коде. В moonscript это исправлено. Но разыменование nil - проблема больших скриптов lua. По сути это аналог null pointer exception. Здесь может помочь автоматическая инициализация всех переменных и немутирующие переменные как в функциональных языках. Но тогда это будет другой ЯП и нужно будет всё переписывать.&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (Ordu)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#169</link>
    <pubDate>Fri, 23 Nov 2018 02:13:43 GMT</pubDate>
    <description>&amp;gt; Есть различные библиотеки для проверки типов (checks, annotate) и статистического анализа &lt;br&gt;&amp;gt; кода (lua lint).&lt;br&gt;&lt;br&gt;Да, но они для версий старше 5.0, я же завязан на 5.0. Да и глупости всё это, я посмотрев, решил что реально чем возится со всей этой хнёй, проще написать компилятор типизированного языка в lua. Вплоть до того, что реализовать lisp на lua, с компиляцией lisp&apos;а в lua. Правда lisp динамиечески типизируемый, то есть он снимет лишь часть проблем.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#168</link>
    <pubDate>Thu, 22 Nov 2018 20:36:15 GMT</pubDate>
    <description>Есть различные библиотеки для проверки типов (checks, annotate) и статистического анализа кода (lua lint). Действительно большой недостаток - отсутствие статических структур и некоторые чрезмерные упрощения. Например, невозможно различить отсутствие переменной/поля таблицы и равенство его nil. Или то что обычные массивы и словари объединены в одну структуру table. Или десяток способов имитировать классы, несовместимые друг с другом. &lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#167</link>
    <pubDate>Wed, 21 Nov 2018 08:26:01 GMT</pubDate>
    <description>Ну так что, сделаем сборку LuaJIT ZverDVD с JSON и мультипоточностью?)))&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (КГБ СССР)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#166</link>
    <pubDate>Wed, 21 Nov 2018 05:29:16 GMT</pubDate>
    <description>Посмотри эту книжку:&lt;br&gt;&lt;br&gt;google.com/search?q=&quot;Lua+Programming+Gems&quot;+2008&lt;br&gt;&lt;br&gt;В ней, вроде, как раз даны примеры применения с объяснением.&lt;br&gt;</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (Ordu)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#165</link>
    <pubDate>Wed, 21 Nov 2018 03:22:36 GMT</pubDate>
    <description>&amp;gt; Ох, не уверен, что смогу помочь. С функциями жрёт, т.к. для неё &lt;br&gt;&amp;gt; не баг, а фича (на сколько помню).&lt;br&gt;&lt;br&gt;Да там всё фича. Некоторые из этих фичей можно пофиксить колупая _G, но вызовы функций можно пофиксить, разве что, собственными реализациями funcall и defun, и вызова/объявлений всех функций через них. Да и то, этот nil, который lua пихает везде по-умолчанию, нехило так будет мешать. Придётся запретить себе использовать nil как значение, и завести новый атом означающий &quot;отсутствие значения&quot;, такой который надо указывать явно, чтобы он был передан, и соответственно тогда возникновение nil в любом месте можно будет считать ошибкой типа &quot;попытка доступа к несуществующей/неинициализированной переменной&quot;. И я бы сделал это, но чтобы это было бы удобно использоваться, надо написать обёртки для всех библиотечных функций. И для всех функций из разных пакетов, которые я скачиваю из интернета. Опять же надо писать парсер lua, чтобы генерить эти обёртки (не писать же их вручную!), и опять же встаёт вопрос, не проще</description>
</item>

<item>
    <title>Компания Microsoft опубликовала реализацию Lua VM, написанну... (neit95)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/115850.html#164</link>
    <pubDate>Wed, 21 Nov 2018 00:44:38 GMT</pubDate>
    <description>Ох, не уверен, что смогу помочь. С функциями жрёт, т.к. для неё не баг, а фича (на сколько помню). Там даже можно несколько значений вернуть, при этом, если у вызывающего есть лишние переменные, они nil&apos;ами будут, если же их недостаёт, ряд возвращаемых значений похерится. Точно не помню (я на нём эпизодически пишу скрипты для сборки C/C++ проектов при помощи premake), но думаю с аргументами такая же ситуация. Единственное, что могу посоветовать, книгу от автора: Роберту Иерузалимски &quot;Программирование на языке Lua&quot; (на русском существует). Правда она для 5.3. Не знаю, но м.б. существовало издание для 5.0, но я не интересовался. У меня её 3-е издание. На крайний случай думаю можно ориентироваться на книгу, а разницу искать в и-нете.&lt;br&gt;</description>
</item>

</channel>
</rss>
