The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Компания Microsoft опубликовала реализацию Lua VM, написанную на языке Go

17.11.2018 13:04

Компания Microsoft подготовила новый движок для исполнения сценариев на языке Lua. Ключевой особенностью представленного Lua VM является реализация на языке Go. В движке поддерживается синтаксис Lua 5.3, но пока отмечаются отдельные несовместимости (например, отсутствует поддержка сопрограмм) и требуется дополнительная стабилизация API. Код проекта открыт под лицензией MIT, которая также используется проектом Lua для распространения кода основного интерпретатора, написанного на языке Си.

В отличие от уже существующих реализаций Lua VM на языке Go, таких как DCLua, GoLua, Golang Lua, go-lua-vm и glua, разработка Microsoft примечательна применением иной архитектуры виртуальной машины, нацеленной на упрощение отладки, расширение средств обработки ошибок, интеграцию встроенного отладчика и поддержку полного сопоставления вызовов на языках Lua и Go. В качестве причин создания новой реализации Lua VM упоминается желание добиться более строгого соответствия спецификациям Lua 5.3 и предоставить удобный API для интеграции с приложениями на языке Go.

Напомним, что язык Lua получил основное распространение в качестве встраиваемого языка (например, для определения конфигурации или для написания расширений). Lua комбинирует простой процедурный синтаксис с мощными возможностями описания данных через использование ассоциативных массивов и расширяемой семантики языка. В Lua используется динамическая типизация, языковые конструкции преобразуются в байт-код, выполняющийся поверх регистровой виртуальной машины с автоматическим сборщиком мусора.

 
  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Релиз языка программирования Lua 5.3
  3. OpenNews: Представлена распределённая ОС Node9, сочетающая технологии Inferno и язык Lua
  4. OpenNews: Выпуск LuaJIT 2.0.3, JIT-компилятора для языка Lua
  5. OpenNews: В ядро NetBSD добавлена поддержка расширений на языке Lua
  6. OpenNews: Компания Google поддержала создание JIT-компилятора для языка Lua
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/49625-lua
Ключевые слова: lua
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (138) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, A.Stahl (ok), 13:10, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +5 +/
    >Ключевой особенностью

    Можно Эпплу продать идею на миллиард: если что-то перекрасить, то это можно назвать ключевой особенностью и смело объявлять о выходе новой версии.

     
     
  • 2.25, Аноним (25), 15:56, 17/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +9 +/
    А теперь написать Go на Lua и выполнить его на Lua, написанном на Go.
     
     
  • 3.26, A.Stahl (ok), 15:58, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +66 +/
    Кажется ты начинаешь подозревать как НА САМОМ ДЕЛЕ устроен современный веб.


     
     
  • 4.130, Аноним (130), 15:45, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Он понял рекурсию
     
     
  • 5.135, Аноним (-), 16:59, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Подводная лодка в степях украины погибла в неравном воздушном бою. Сабж это как-то так...
     
  • 2.28, Акакжев (?), 15:59, 17/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    > перекрасить

    иной архитектуры виртуальной машины

     
     
  • 3.46, кремлебот (?), 17:36, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –3 +/
    немножко другие названия функций, немножко другое разбиение по модулям, ну еще какие-нибудь мелочи.
     
     
  • 4.76, Акакжев (?), 08:37, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +3 +/
    > немножко другие названия функций, немножко другое разбиение по модулям, ну еще какие-нибудь
    > мелочи.

    Вы это серьёзно? Посмотрели, сравнили? Или просто своё понимание "архитектуры" спроецировали на других?

     

  • 1.2, Аноним (2), 13:16, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • –1 +/
    Так что, Lua будет жить?
    Очень достойный конкурент питону, но непопулярный.
     

     ....большая нить свёрнута, показать (71)

  • 1.5, Аноним (5), 13:44, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    > В качестве причин создания новой реализации Lua VM упоминается желание добиться более строгого соответствия спецификациям Lua 5.3 и предоставить удобный API для интеграции с приложениями языке Go.

    А может всё-таки NiH? Просто как-то не похоже на мелкомягких. Если бы ещё лицензия была бы GPLv3, я бы подумал что сегодня 1 апреля.

     
     
  • 2.18, Константавр (ok), 15:17, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    не NiH а методичное и неотвратимое воплащение https://ru.wikipedia.org/wiki/Embrace,_Extend,_and_Extinguish
     
     
  • 3.19, Константавр (ok), 15:20, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    ой. а куда делась кнопка "Редактировать"? Я ошибку поправить не могу.
     

  • 1.6, Аноним (6), 13:45, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +1 +/
    Есть LuaJIT и без Microsoft
     
  • 1.10, proninyaroslav (ok), 14:13, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +1 +/
    Microsoft активно пытается внедрится в сферу разработки свободного софта. Мило
     
     
  • 2.13, cr2032 (?), 14:25, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    а потом сертификаты требовать для фреймворка, знаем этот бесплатный энтерпрайз
     
     
  • 3.113, Andrey Mitrofanov (?), 09:52, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > а потом сертификаты требовать для фреймворка, знаем этот бесплатный энтерпрайз

    Почитайте ещё про "азуре айпи эдвентедж" -- теперь там патентные билетики на оплату рэкета Микрософт.  Не лицензии, не сертификаты.

     

  • 1.15, Андрей (??), 14:45, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • –3 +/
    Виртуалка в виртуалке, виртуалкой погоняет. плюс ещё не спешный gO, который как и та же жаба с питоном -нетормозит.
     
  • 1.20, Аноним (20), 15:22, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +2 +/
    >  DCLua, GoLua, Golang Lua, go-lua-vm и glua

    Похоже, что go-программистам делать больше нечего - наплодили уже 7 вариантов интерпретаторов Lua. А что-нибудь другое можно на этом go писать? :)

     
     
  • 2.34, Аноним (34), 16:26, 17/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +3 +/
    Можно ещё попробовать на Lua интерпретатор Go написать...
     
     
  • 3.69, Андрей (??), 02:58, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Ну, сам Go легко переписали на самом же Go, так что, видать, располагает к написанию компиляторов на этом языке.
     
  • 3.171, hdkfhsfhsiosf (?), 08:54, 23/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    уже есть https://github.com/gijit/gi
     
  • 2.78, coinofficial (ok), 09:10, 18/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    Каждый go-программист считает нужным написать свой web-сервер. Их наверное уже за пару десятков на нём.
     
     
  • 3.84, 123 (??), 11:14, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +4 +/
    Программистов го? :)
     
  • 3.122, Аноним (130), 11:07, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    fixed: Каждый гопник считает нужным написать свой web-сервер.
     
  • 3.128, username (??), 15:23, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Да, но не у каждого выходит удобный caddyserver в три строчки делающий все что от него нужно.
     

  • 1.32, интеллигентный разработчик (?), 16:21, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    > В качестве причин создания новой реализации Lua VM упоминается желание добиться более строгого соответствия спецификациям Lua 5.3 и предоставить удобный API для интеграции с приложениями языке Go.

    Взять lua API и сделать к нему биндинг было бы проще кажется. С учетом того, что сам lua редко меняется.

     
     
  • 2.134, ыфвыфв (?), 16:38, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Не проше. cgo хоть и существует, но там много ограничений получается.
     

  • 1.44, freehck (ok), 17:14, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • –1 +/
    А с производительностью-то у поделия как?
     
     
  • 2.53, пох (?), 18:12, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    "компилируецца очень быстро".
    А компилятор go на нем еще недописали, пока непонятно что там со скоростью.

     
     
  • 3.56, pavlinux (ok), 18:20, 17/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    >  со скоростью.

    Оно те надо?

     
     
  • 4.99, Аноним (99), 23:08, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Не, ты чо. Пойду ядро Linux на JS перепишу...
     
     
  • 5.138, Дмитрий Кондаков (?), 20:37, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Опоздал.
    https://copy.sh/v86/?profile=linux26
     
     
  • 6.139, Анонн (?), 20:47, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Опоздал.
    > https://copy.sh/v86/?profile=linux26
    > x86 virtualization in JavaScript, running in your browser and NodeJS

    Не опоздал. Это не то.


     
  • 6.159, neit95 (ok), 03:11, 21/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Это VirtualBox переписанный на js. До ядра они пока ещё не добрались (пока не добрались).
     

  • 1.60, Аноним (60), 20:21, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    Ни слова про производительность
     
     
  • 2.114, Andrey Mitrofanov (?), 09:56, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    > Ни слова про производительность

    Так, после _слова_ "Микрософт" -- разворачиваемся и уходим.

    Какая, в Красную Армию!?, "производительность?7

     
     
  • 3.133, Andrey Mitrofanov (?), 15:55, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >> Ни слова про производительность
    > Так, после _слова_ "Микрософт" -- разворачиваемся и уходим.
    > Какая, в Красную Армию!?, "производительность?7

    Ура, товарищи[U]! https://fritzmorgen.livejournal.com/1440212.html [/U]

    $SUBJ  Скорее бы уже.  Опять обманут.

     
     
  • 4.136, КГБ СССР (?), 17:45, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Вижу, там четырёхглазый стремительно побеждает мировую буржуазную русофобию.
     

  • 1.61, Аноним (60), 20:22, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Осталось интерпретатор Го на луа запилить и пусть друг друга запускают
     
     
  • 2.126, нах (?), 14:42, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    чего это вдруг - интерпретатор? Компилятор.

     

  • 1.63, Gannet (ok), 21:36, 17/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.
     
     
  • 2.67, Аноним (60), 02:29, 18/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    еще и доплачивать будут
     
     
  • 3.71, Аноним (71), 06:10, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    Я читал их финансовые отчёты. Они знают, что делают. Чем больше перетянут одеяло на себя, тем лучше для них.
     
  • 2.115, Andrey Mitrofanov (?), 10:00, 19/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    > Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.

    Да, да!  Тут один мазоизвестный филантроп вложил кучу денег, чтоб завалить небелокожий мир его же брикетированным г---ом и _стать_ _с_ _этого_ ещё-о-о-о-О-О-о богаче.

    https://www.ixbt.com/news/2018/11/08/bill-gejts-predstavil-unitaz-ne-trebujush

    #таг

     
     
  • 3.127, нах (?), 14:49, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    да ладно, у нас в каждой деревне уже километров за 100 от мкада такой.

    А в небелокожем мире да, одни экологические проблемы. "чего это у вас рыба вся в речке попередохла? - Э... понимаешь, тут жидкость для септиков сильно ядовитая, а сортиры (да и вообще всё) - в сильный сезон дождей заливало - они ж от уреза воды в тридцати сантиметрах (а холмы вооооон там). Ну и, вот..."
    И да, это деревня (!) в стране четвертого мира. К счастью, лишенной Создателем халявных денег от продажи нефтепродуктов. По этой причине гадить за баней у них немодно.

    Ну ничо, гейц всех их спасет, научит дерьмо брикетировать. А рыбу они к тому моменту все равно электрификацией всю уничтожат.

     
  • 3.144, Gannet (ok), 22:47, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    >> Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.
    > Да, да!  Тут один мазоизвестный филантроп вложил кучу денег, чтоб завалить
    > небелокожий мир его же брикетированным г---ом и _стать_ _с_ _этого_ ещё-о-о-о-О-О-о
    > богаче.
    > https://www.ixbt.com/news/2018/11/08/bill-gejts-predstavil-unitaz-ne-trebujush
    > #таг

    Ну а што. Этот человек себе может позволить этим заниматься.
    И вообще...
    >в небольшом количестве человеческих экскрементов может находиться 200 триллионов клеток ротавируса, Билл Гейтс принёс с собой на мероприятие банку с этими самыми экскрементами.

    Интересно, откуда он их взял? о_о

     

  • 1.72, Аноним (72), 06:20, 18/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +2 +/
    Корпорасты весьма предсказуемы Они помогают СПО только в тех областях, где им н... большой текст свёрнут, показать
     
     
  • 2.73, Аноним (71), 06:59, 18/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    На мой взгляд, они делают это, чтобы их имя упомянули в каком-нибудь успешном коммерческом продукте. А там может и работу предложат. Кроме как почесать ЧСВ и потанцевальные перспективы иных поводов быть не может.

    С другой стороны, корпорации могут выпускать код под такими лицензиями без особых проблем, когда они продолжают дорабатывать и использовать код в своих продуктах. Если другая сущность возьмёт их код, она автоматом попадёт в зависимость. И если та в свою очередь доработает код, она ещё может и вернуть наработки, которые принесут пользу первым. Неплохая стратегия развития на самом деле.

     
     
  • 3.132, Аноним (130), 15:54, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >И если та в свою очередь доработает код, она ещё может и вернуть наработки, которые принесут пользу первым.

    Если бы ТА, например, была бы моя, то да, вернула бы наработки, но вот только под Copyleft.

     
  • 2.142, irinat (ok), 21:01, 19/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    Если проект открыт под MIT или BSD, проще и дешевле нанять авторов проекта для решения нужной тебе задачи, чем тратить время на то, чтобы вникнуть в детали работы. Наличие открытого кода не означает, что порога вхождения в кодовую базу нет. На всё нужны ресурсы.
     
  • 2.145, KonstantinB (ok), 00:00, 20/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    https://lionet.livejournal.com/31952.html
     
  • 2.163, neit95 (ok), 03:32, 21/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Я думаю тут много вариантов:
    1) Некоторый самопиар для вероятного последующего попадания в какие-нибудь годные конторки на работу.
    2) Заброшенные проекты. В этом случае авторам уже вообще по бую. Что хотели от этого кода, они уже получили (или не смогли получить и забили).
    3) Отпачковывающиеся проекты. Писала компания N какие-то продукты. А потом смотрит: годный фреймворк выходит. Допилили до отдельного проекта, подтянули у себя куда надо. А далее что? Если он не критичный супер секретный компонент системы, и если лень его как-то платно продвигать, почему бы и не выбросить в опенсорс? Для опенсорса - это потенциально качественно написанный продукт. Для компании - орда халявных тестеров. Симбиоз прям. Кстати, смотрю частое явление у таких гигантов, как Google, Яндекс, Facebook и др.
     

  • 1.79, Аноним (79), 10:04, 18/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    а разве не проще портировать нативный lua?

    зачем пускать луа через ж* гоу? О_О

     
     
  • 2.83, Аноним (83), 11:05, 18/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Потому что EEE.
     
  • 2.94, Аноним (94), 17:20, 18/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    У Cgo проблемы с производительностью. Оно не для всего применимо.
     
     
  • 3.116, Andrey Mitrofanov (?), 10:03, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >проблемы с производительностью. Оно не для всего применимо.

    Ога, это не Микрософт тормозит, а гугле-Гоу и нище-Луа.  </точняк>

     
  • 2.102, Аноним (102), 05:27, 19/11/2018 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Вполне веротяно, что они хотят использовать всю силу асинхронности GO?
     

  • 1.104, Аноним666 (?), 08:05, 19/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    бесплатный хинт микрософту - срочно нужен ассемблер написанный на js
     
  • 1.109, qwerty_qwerty1 (?), 09:09, 19/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • –1 +/
    Хм. А зачем  Микрософт не та компания что бы делать что то просто так и затем выкинуть, или ее Гуугл заразил.
     
     
  • 2.117, Andrey Mitrofanov (?), 10:10, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    > Хм. А зачем  Микрософт не та компания что бы делать что
    > то просто так и затем выкинуть, или ее Гуугл заразил.

    Весь "бесплатный" выхлоа MS Research -- химоружие на головы интернетовских фрифагов.

    Нетоксичный, полезный, двигающий Цивилизацию вперёд выхлов вемирно известных учёных, работающих в MS Research, быстро-быстро-быстро патентуется всемирно "известными" манагерами (каптёр-стайл -- "чужое, взять-взять!") из той же лавочки и переходят в разряд боеприпасов для п.1. и для фабрики тролей Микрософта.

    Вурдалака никто не заразил, не беспокойтесь.  К ним не пристаёт.

     

  • 1.112, Попугай Кеша (?), 09:47, 19/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +2 +/
    Что это за такое? И зачем? И зачем тратить на это время?
     
     
  • 2.119, Andrey Mitrofanov (?), 10:53, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Что это за такое? И зачем? И зачем тратить на это время?

    Похейтить мальца в каментах же, расслабиться.

     

  • 1.118, Мууу (?), 10:48, 19/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Тройной изврат - Микрософт, Lua и Го.
     
     
  • 2.120, Andrey Mitrofanov (?), 11:01, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Тройной изврат - Микрософт, Lua и Го.

    Безмозглых поклонников "чего-то новенького", "2108й на дворе" и "прогрессс не осстановить" хоардят и целе-аудиторят.  Чем больше они вляпались, замарались и неосилили  --  тем скорее они вспомнят название того магазинчика, где надо тариться, чтобы в конце концов "всё получилось"...   #я-ниасилил-микрософт

     

  • 1.141, irinat (ok), 20:56, 19/11/2018 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +1 +/
    > отсутствует поддержка сопрограмм

    Странное решение. Когда понадобится добавить, придётся половину старого кода выбросить, а другую — с нуля переписать.

     
     
  • 2.143, X4asd (ok), 21:46, 19/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    сопрограммы довольно базовая часть Lua .

    если они не сделали их -- то спрашиается -- на кой хрен было вообще делать Lua

     
     
  • 3.150, Andrey Mitrofanov (?), 10:17, 20/11/2018 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    > сопрограммы довольно базовая часть Lua .
    > если они не сделали их -- то спрашиается -- на кой хрен
    > было вообще делать Lua

    Миткросоуфт Рисёрч всё чего-то ни рисёурчит, да рисёурчит.

    А всё бейсик получается.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру