URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 115850
[ Назад ]

Исходное сообщение
"Компания Microsoft опубликовала реализацию Lua VM, написанну..."

Отправлено opennews , 17-Ноя-18 13:10 
Компания Microsoft подготовила (https://github.com/Azure/golua) новый движок для исполнения сценариев на языке Lua. Ключевой особенностью представленного Lua VM является реализация на языке Go. В движке поддерживается синтаксис Lua 5.3, но пока отмечаются отдельные несовместимости (непример, отсутствует поддержка сопрограмм) и требуется дополнительная стабилизация API. Код проекта открыт (https://github.com/Azure/golua) под лицензией MIT, которая также используется проектом Lua для распространения кода основного интерпретатора, написанного на языке Си.

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

URL: https://news.ycombinator.com/item?id=18469672
Новость: https://www.opennet.me/opennews/art.shtml?num=49625


Содержание

Сообщения в этом обсуждении
"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено A.Stahl , 17-Ноя-18 13:10 
>Ключевой особенностью

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 15:56 
А теперь написать Go на Lua и выполнить его на Lua, написанном на Go.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено A.Stahl , 17-Ноя-18 15:58 
Кажется ты начинаешь подозревать как НА САМОМ ДЕЛЕ устроен современный веб.



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 15:45 
Он понял рекурсию

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 16:59 
Подводная лодка в степях украины погибла в неравном воздушном бою. Сабж это как-то так...

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 17-Ноя-18 15:59 
> перекрасить

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено кремлебот , 17-Ноя-18 17:36 
немножко другие названия функций, немножко другое разбиение по модулям, ну еще какие-нибудь мелочи.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 18-Ноя-18 08:37 
> немножко другие названия функций, немножко другое разбиение по модулям, ну еще какие-нибудь
> мелочи.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 13:16 
Так что, Lua будет жить?
Очень достойный конкурент питону, но непопулярный.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 13:37 
Да ничего принципиального нет там. Питон ничем не хуже. Я за сабж бы и не сел, если бы не awesome wm. И то - на питоне он был бы гораздо лучше.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 14:21 
На Питоне есть Qtile github.com/qtile/qtile

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено аа , 18-Ноя-18 10:54 
Питон ровно ничем не отличается от пхп, и перла и руби и прочих монстров, а луа у которой 200кб бинарник, ровно такой же как у awk, легко переносится хоть на ардуину с 20кб озу, так что не надо ляля

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Анонн , 18-Ноя-18 14:30 
> Питон ровно ничем не отличается от пхп, и перла и руби и прочих монстров, а луа у которой 200кб бинарник, ровно такой же
> как у awk, легко переносится хоть на ардуину с 20кб озу, так что не надо ляля

Очередной Экспердус Опеннетус спешит поделиться ценнейшим мнением.
MicroPython? Не, не слышал!

> How big is MicroPython? How much memory does it take?
> TL;DR: 128K ROM/8K RAM is the recommended minimum configuration for doing
> something "real". You can easily go below (or above) that, see below.
>


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 19:48 
Ага, только когда дело дойдёт до подключения нужных модулей всё "micro" улетит в никуда.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено нах , 19-Ноя-18 14:41 
все норм, никуда не улетит - эти модули просто не подключатся, ибо с мелко-питоном несовместимы ;-)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 19-Ноя-18 08:49 
>> How big is MicroPython? How much memory does it take?
>> TL;DR: 128K ROM/8K RAM is the recommended minimum configuration for doing
>> something "real". You can easily go below (or above) that, see below.
>>

Arduino Uno

Микроконтроллер ATmega328
Флеш-память      32 Кб (ATmega328) из которых 0.5 Кб используются для загрузчика
ОЗУ              2 Кб (ATmega328)
EEPROM           1 Кб (ATmega328)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Анонн , 19-Ноя-18 13:59 

> Arduino Uno
>  Микроконтроллер ATmega328
> Флеш-память      32 Кб (ATmega328) из которых 0.5
> Кб используются для загрузчика
> ОЗУ            
>   2 Кб (ATmega328)
> EEPROM           1
> Кб (ATmega328)

Вы бы для начала определились:
> хоть на ардуину с 20кб озу

Да и дополнительно к спекам не помешал бы пример или демка не-совсем-уж-хелловорда на Луа на ЭТОЙ ардуине.



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 20-Ноя-18 06:49 
>> Arduino Uno
>>  Микроконтроллер ATmega328
>> Флеш-память      32 Кб (ATmega328) из которых 0.5
>> Кб используются для загрузчика
>> ОЗУ
>>   2 Кб (ATmega328)
>> EEPROM           1
>> Кб (ATmega328)
> Вы бы для начала определились:
>> хоть на ардуину с 20кб озу

Дык я и определил, что спорить с тем кто "легко переносится хоть на ардуину с 20кб озу" смысла нет :)

> Да и дополнительно к спекам не помешал бы пример или демка не-совсем-уж-хелловорда
> на Луа на ЭТОЙ ардуине.

Не видел (и не искал). Вполне пишут (в т.ч. полные новички в программировании) для Ардуин на диалекте (упрощённом) С++. ИМХО больше пользы: близость к железу даёт углублённое понимание оного.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 14:01 
Lua лёгкий, а не удобный.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 14:15 
Посмотрите на количество модов для Сталкера.
Все же многие нашли его удобным.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено анон , 17-Ноя-18 15:04 
все плагины для World of warcraft на Lua написаны

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено кремлебот , 17-Ноя-18 17:40 
в Вампирском Машкераде был Питон. Я оба языка пробывал встраивать. Бидон был явно мощнее, но Луа проще. Там в Бидоне был миллион строк, огромная свалка библиотек. Луа была крошечной, ее можно было легко запихнуть в движок, но и делать могла почти ничего. Просто чтобы не писать свой интерпритатор.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено barmaglot , 19-Ноя-18 09:20 
Вы просто экосистемы Lua не знаете. Посмотрите luarocks, Open-Resty.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ananan , 17-Ноя-18 18:00 
На lua вся Don't starve написанна, окромя обвязки с sdl.
Аналогично лучший рогалик ToME - полностью на lua.
Супер легковесный 2д движок для луа - love2d занимает минимум памяти.

Вообще даже немного обидно что lua уделяется мало внимания. Я бы был бы не против встроенного в базовую систему FreeBSD lua интерпретатора. Занимает минимум памяти, а писать скрипты на нем гораздо проще чем на шелле. Особенно когда нужны списки/массивы.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 15:42 
> На lua вся Don't starve написанна
> Аналогично лучший рогалик ToME

и обе тормозят, как моя бабка. Особенно tales of maj eyal - там просадки фпс вообще на любом железе (особенно во время автопоиска)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Анонн , 19-Ноя-18 15:50 
> Я бы был бы не против встроенного в базовую систему FreeBSD lua интерпретатора.

https://reviews.freebsd.org/D14295
> Add Lua as a scripting langauge to /boot/loader

Базовей некуда.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 19-Ноя-18 03:37 
Угу. Потому что больше ни на чём их писать невозможно. Близы встроили lua в клиент, но не встроили туда python.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 04:58 
Lua - нишевой язык. Кроме скриптов в играх больше почти нигде не используется. Wireshark разве что вспоминается.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено КГБ СССР , 18-Ноя-18 10:39 
https://www.lua.org/uses.html

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено barmaglot , 19-Ноя-18 09:26 
Расскажите это CloudFlare, MailRu, Taobao, они очень удивятся.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено InuYasha , 20-Ноя-18 13:01 
> Расскажите это CloudFlare, MailRu, Taobao, они очень удивятся.

Вот этим-то ребятам как раз впору Lua обмазываться. )


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено нах , 20-Ноя-18 21:57 
я вас, б..дей, на этот пароход целый год собирал!


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Онаним , 17-Ноя-18 16:13 
Скорее он легко встраиваемый. Лёгкостью и удобством там не пахнет близко даже.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 14:41 
у них отсчет начинается с единицы, а не с нуля. Только за это авторов луа надо бить ссаными тряпками

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 14:53 
> у них отсчет начинается с единицы, а не с нуля

Достаточно традиционный подход. Fortran, R, Matlab, Julia тоже с единицы


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним84701 , 17-Ноя-18 16:52 
>> у них отсчет начинается с единицы, а не с нуля.
> А по-моему это е#анина, когда arr.length > 0, а arr[length] не существует.

Ох уж эта вечная война остроконечни^W приверженцев 0/1 индексов.
Смотрится особенно умильно на фоне классики:
(Внимание: особо впечатлительным фанатам "единственно верной индексации" лучше не смотреть и не читать -- возможен разрыв … э-э-э шаблона :) )
------


program pukanero;
var myarr: array[-5..10, -10..10] of Byte;
begin
    myarr[10][10] := 37;
    myarr[-5,-10] := 13;
    writeln('len:',length(myarr),',', length(myarr[low(myarr)]),
            '|',myarr[-5,-10],myarr[10,10]);
end.

https://ideone.com/8HxUl5

    Success    #stdin #stdout 0s 336KB

len:16,21|1337


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 11:02 
Многоли ли использующих сейчас Пасквиль?

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним84701 , 19-Ноя-18 13:33 
>> на фоне классики
> Многоли ли использующих сейчас Пасквиль?
> Пасквиль?

Многие ли сейчас читают Достоевского или Гоголя?
Можно ли, исходя из цифр активных читателей, сделать вывод о превосходстве языковой и сюжетной части опусов Донцовой и Поселягина над произведениями Чехова или Толстого?
Стоит ли воспринимать критику "Двинацати стулиев" всерьез?
Вопросы, вопросы …


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 20-Ноя-18 07:08 
А примерчик ведь замечательный. Адепты превосходства скобочек {} в священной войне победили. Однако, с [] вышло ой. В Паскале индексы на уровне языка. В С это введённая пользователями абстракция. Потом абстракционисты переполняют буфер, а Керниган с Риччи виноват.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 02:55 
Range конструкции в паскалеобразных - одна из любимых их особенностей. Особенно range case. Очень жаль, что не использовали в условиях.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 02:57 
И да, о Zonnon наверное люди даже не слыхали.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ag , 17-Ноя-18 15:58 
> у них отсчет начинается с единицы, а не с нуля. Только за это авторов луа надо бить ссаными тряпками

Подражателей идеи Си-шных индексов надо бить, и не ссыными тряпками, а хорошей дубиной.
В Си эта идея обоснованная, язык для системного программирования, по сути высокоуровневый ассемблер.
Но в языках общего назначения - это маразм карго-культа.
Границы индекса должны назначаться при объявлении / создании массива и быть произвольными.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено pavlinux , 17-Ноя-18 16:01 
> Границы индекса должны назначаться при объявлении / создании массива и быть произвольными.

Массивы должны быть переменного размера. В прикладухе не нужно таких геморов.

А вообще применение массивов в прикладном софте немного странно,
ну кроме случаев когда сама программа создаётся для работы с массивами
(мат. пакеты, статистика, астрономия, графика, игр. движки,....)  


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 17-Ноя-18 16:14 
> идеи Си-шных индексов

Не нашёл индексов в ISO/IEC 9899:201x. Единственное вхождение:

6.7.9 Initialization

22 If an array of unknown size is initialized, its size is determined by the largest indexed
element with an explicit initializer. The array type is completed at the end of its
initializer list.



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено pavlinux , 17-Ноя-18 16:25 
int A[] = {9,8,7,6}  - массив из 4-х элементов A[0],A[1], A[2], A[3]; A[0] == 9, A[3] == 6;

Шо не ясно?

int A[99] = {0} - массив из 99 элементов, всё нули.
int A[99] = {11} - так низя. Точнее можно, но нихрена не понятно, равносильно:  A[99] = {[0]=11, [1 ... 98]=UNDEFINED};
int A[] = {0};  - казалось бы сингулярность, но нет - 1 элемент, нулевой. :)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 17-Ноя-18 16:48 
> Шо не ясно?

Где определение "индекс" в стандарте С.
[] суть синтаксический сахар для указателей.
Боюсь, что заимствование "идеи индексов" из С выдумали сами заимствующие.

> int A[] = {0};  - казалось бы сингулярность, но нет - 1 элемент, нулевой. :)

Размер при объявлении можно не указывать, тогда он будет равен количеству инициализирующих элементов.

> int A[99] = {11} - так низя.

Да, надо добавить ;// и станет well-formed.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено pavlinux , 17-Ноя-18 16:52 
> Где определение "индекс" в стандарте С.

Ну отец, это не в Си, это в матане и линейной алгебре :)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 17-Ноя-18 17:12 
В матрицах что ли? Так это в тетрадке заставляли вручную перемножаемые элементы расписывать, что бы научились. А в прикладухе зачем вот это вот всё? Там ведь даже ответ зачастую не в цифрах нужен, а в виде точки на экране.

А то ведь получается, что они для индексации элементов упорядоченного множества используется. Осталось их добавить в LISP. :)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено pavlinux , 17-Ноя-18 18:04 
> А в прикладухе зачем вот это вот всё?

Это ужо философия.

А нулевой индекс в массиве, патамуша массив - это куча байт, относительный адрес которых начинается с нуля.



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Himik , 18-Ноя-18 01:23 
Не потому, что массив байт, а потому что такова прямоугольная (Декартова) система координат, которая начинается с 0. Нарушение этого правила полностью ломает общепринятую систему координат.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 18-Ноя-18 08:49 
> Не потому, что массив байт, а потому что такова прямоугольная (Декартова) система
> координат, которая начинается с 0.

Напомню, что кто-то якобы увидел в языке Си некие "индексы", и перетащил их в другие языки. При чём тут абсциссы с ординатами, которые вообще-то далеко не всегда целые числа...


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 18-Ноя-18 08:22 
> А нулевой индекс в массиве, патамуша массив - это куча байт, относительный
> адрес которых начинается с нуля.

Потому что Вы не поняли концепцию указателей, относительно которых и происходит нулевое (или иное) смещение.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено ISO C , 18-Ноя-18 02:52 
> Не нашёл индексов в ISO/IEC 9899:201x

https://port70.net/~nsz/c/c11/n1570.html#Index пожалуйста


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 18-Ноя-18 08:21 
>> Не нашёл индексов в ISO/IEC 9899:201x
> https://port70.net/~nsz/c/c11/n1570.html#Index пожалуйста

Обманывать нехорошо.
Этот Индекс относятся не к языку.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено ISO C , 18-Ноя-18 18:04 
>>> Не нашёл индексов в ISO/IEC 9899:201x
>> https://port70.net/~nsz/c/c11/n1570.html#Index пожалуйста
> Обманывать нехорошо.
> Этот Индекс относятся не к языку.

А к чему он относится?


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 19-Ноя-18 08:22 
>>>> Не нашёл индексов в ISO/IEC 9899:201x
>>> https://port70.net/~nsz/c/c11/n1570.html#Index пожалуйста
>> Обманывать нехорошо.
>> Этот Индекс относятся не к языку.
> А к чему он относится?

Попробуйте перевести... прямо. ;)



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено ISO C , 18-Ноя-18 14:02 
>> идеи Си-шных индексов
> Не нашёл индексов в ISO/IEC 9899:201x.

Так может ты переводишь криво, "грамотей"?

https://port70.net/~nsz/c/c11/n1570.html#6.5.2.1 (6.5.2.1 Array subscripting)
https://translate.yandex.ru/?lang=en-ru&text=subscript


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 19-Ноя-18 08:21 
>>> идеи Си-шных индексов
>> Не нашёл индексов в ISO/IEC 9899:201x.
> Так может ты переводишь криво, "грамотей"?
> https://port70.net/~nsz/c/c11/n1570.html#6.5.2.1 (6.5.2.1 Array subscripting)
> https://translate.yandex.ru/?lang=en-ru&text=subscript

Цитаты с определением "индекса массива", очевидно, Вы предоставить не можете. Потому что её нет. Остаётся фантазировать.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Акакжев , 19-Ноя-18 08:31 
>>> идеи Си-шных индексов
>> Не нашёл индексов в ISO/IEC 9899:201x.
> Так может ты переводишь криво, "грамотей"?
> https://port70.net/~nsz/c/c11/n1570.html#6.5.2.1 (6.5.2.1 Array subscripting)
> https://translate.yandex.ru/?lang=en-ru&text=subscript

Создатели стандарта пользуются другим словарём.

Из словаря OxfordDictionary (En-En)
subscript [+]
1. adjective (of a letter, figure, or symbol) written or printed below the line
2. noun a subscript letter, figure, or symbol
■ Computing a symbol (notionally written as a subscript but in practice usually not) used in a program, alone or with others, to specify one of the elements of an array

Читаем: для спецификации одного из элементов массива.

"The definition of the subscript operator [] is that E1[E2] is identical to (*((E1)+(E2)))"

Переводим стандарт по смыслу: оператор синтаксического сахара для арифметики указателей.

"Индекс" ввиду отсутствия внятной семантики -- это ещё более вольная интерпретация, чем моя выше.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено annual slayer , 17-Ноя-18 19:53 
а в каких сферах луа и питон конкурируют то?

основная популярность питона не в сфере встраиваемых языков (хоть его так тоже используют)


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 11:22 
Например Ардуино-подобные игрушки. Вместо тяжёлого для новичков C там можно завести интерпретатор Lua и писать на ней. А вот интерпретатор питона "тянут" лишь дорогие платы помощнее.
Имхо, там подошло бы что-то вроде Vala, которая не интерпретируется, а транслируется в C код, а освоить её не сложнее C#.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено annual slayer , 21-Ноя-18 03:15 
> Например Ардуино-подобные игрушки. Вместо тяжёлого для новичков C там можно завести интерпретатор
> Lua и писать на ней. А вот интерпретатор питона "тянут" лишь
> дорогие платы помощнее.
> Имхо, там подошло бы что-то вроде Vala, которая не интерпретируется, а транслируется
> в C код, а освоить её не сложнее C#.

а в этом жанре разве не js сейчас в топе?


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено annual slayer , 21-Ноя-18 03:16 
> Имхо, там подошло бы что-то вроде Vala, которая не интерпретируется, а транслируется
> в C код, а освоить её не сложнее C#.

мне кажется, nim подошел бы больше чем Vala


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 19-Ноя-18 04:10 
> Очень достойный конкурент питону, но непопулярный.

Это мнение основано на опыте применения lua? Если так, то киньте в меня пожалуйста каким-нибудь гайдом, который может объяснить человеку воспитанному на типизированных языках, как можно написать на нетипизированном языке программу сложнее чем hello world. Я пытался найти подобный гайд в интернете, когда столкнулся с lua, но мне это не удалось. Я знаю, что людям как-то удаётся писать на lua программы в тысячи, и даже десятки тысяч строк, но я не знаю как. А очень хочу знать.

В смысле, у меня есть как можно привнести в lua типизацию, хотя бы динамическую, но другие то обходятся без этого. И на вопрос "как им это удаётся" я могу предположить лишь один ответ: они гениальные программисты, чья гениальность недостижима для моего понимания. Но я видел примеры кода на lua, и они в большинстве своём вовсе не похожи на код гения. Хотя, если гениальность непостижима, может я просто не вижу гениальности этого кода?

Собственно мне бы очень хотелось найти что-нибудь, что может пролить свет на эту загадку.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 19:34 
Я тот самый анон.
Я писал на ней игрульки (мобильные движки вроде Corona SDK, Defold...), моды к играм, программировал микроконтроллеры (Lua-node), даже писал GUI приложения для десктопа (https://github.com/pavouk/lgi).
Игрушку выложил в Google Play, но популярности она не добилась, моды до сих пор где-то валяются на каких-то форумах, микроконтроллер я вообще воспринимал как игрушку.

Могу сказать, что Lua - хороший язык, LuaJIT очень быстрая. Но если вы привыкли к языкам с жесткой статической типизацией, то lua вам просто не нужна.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 19-Ноя-18 20:52 
> Но если
> вы привыкли к языкам с жесткой статической типизацией, то lua вам
> просто не нужна.

Отлично. Я тоже сказал бы что она мне не нужна, но её встраивают куда ни попадя. Как правило не предлагая никаких альтернатив.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 22-Ноя-18 23:36 
Есть различные библиотеки для проверки типов (checks, annotate) и статистического анализа кода (lua lint). Действительно большой недостаток - отсутствие статических структур и некоторые чрезмерные упрощения. Например, невозможно различить отсутствие переменной/поля таблицы и равенство его nil. Или то что обычные массивы и словари объединены в одну структуру table. Или десяток способов имитировать классы, несовместимые друг с другом.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 23-Ноя-18 05:13 
> Есть различные библиотеки для проверки типов (checks, annotate) и статистического анализа
> кода (lua lint).

Да, но они для версий старше 5.0, я же завязан на 5.0. Да и глупости всё это, я посмотрев, решил что реально чем возится со всей этой хнёй, проще написать компилятор типизированного языка в lua. Вплоть до того, что реализовать lisp на lua, с компиляцией lisp'а в lua. Правда lisp динамиечески типизируемый, то есть он снимет лишь часть проблем.



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 23-Ноя-18 06:49 
Так lua тоже динамически типизируемый. Annotate очень интересная библиотека. Там добавляются декоратором doc-строки для проверки типов аргументов функции, по которой генерируется конечный автомат. На luajit работает быстрее чем check type, реализованный на си в виде dll. Да, ещё раздражает обилие locate и end в коде. В moonscript это исправлено. Но разыменование nil - проблема больших скриптов lua. По сути это аналог null pointer exception. Здесь может помочь автоматическая инициализация всех переменных и немутирующие переменные как в функциональных языках. Но тогда это будет другой ЯП и нужно будет всё переписывать.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 20-Ноя-18 04:34 
> Я тот самый анон.
> Я писал на ней игрульки (мобильные движки вроде Corona SDK, Defold...), моды
> к играм, программировал микроконтроллеры (Lua-node), даже писал GUI приложения для десктопа
> (https://github.com/pavouk/lgi).

Ну это не очень показательный проект. Это просто бинды к внешней библиотеке без попытки создать что-то своё. Но и тем не менее вопрос: а там все эти тесты-проверки типов вручную писались, или всё же автосгенерированы были? Если автосгенерированы, то что это за утилита такая замечательная? Позволяет ли она автогенерировать произвольные юзерские типы, чтобы не надо было вручную набирать бы весь этот бойлерплейт с setmetatable, check_type на каждое поле, а тупо описать тип декларативно, и получить всё остальное бонусом?


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 20-Ноя-18 13:03 
Эта замечательная утилита называется gobject-introspection. Именно она создаёт такое многообразие биндингов к Gobject.
Если бы не она, я бы выбрал Qt.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 20-Ноя-18 16:07 
> Эта замечательная утилита называется gobject-introspection. Именно она создаёт такое
> многообразие биндингов к Gobject.
> Если бы не она, я бы выбрал Qt.

Это не вариант. В моём случае нужен именно lua код, встроить C'шные модули не удастся. Если бы это было возможно, я бы вообще не парился на тему lua ни секунды.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 03:07 
Lua же встраиваемый язык. Чистый Lua - это на поиграться. Там в стандартной библиотеки нет слишком много того, что нужно. Поэтому и недотягивает до python'а по популярности.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 21-Ноя-18 03:28 
> Lua же встраиваемый язык. Чистый Lua - это на поиграться. Там в
> стандартной библиотеки нет слишком много того, что нужно. Поэтому и недотягивает
> до python'а по популярности.

Да, я понимаю. И именно этот кейс я и имею в виду. Есть приложение, в нём не хватает функциональности на мой взгляд, но там есть встроенный луа. Недостающую функциональность я оцениваю в несколько тысяч SLOC. Я написал около 1 kSLOC и даже когда этот код работает, я не верю в то, что он работает. Ну, я писал его "волнами", типа написал что-то, посмотрел, перелопатил весь код дописал ещё чутка. Посмотрел, перелопатил. И так раза три-четыре. Сейчас я смотрю на то что получилось, и думаю, что же теперь делать -- переписывать заново с учётом обретённых знаний? Тщательно избегая копипаста, чтобы туда не просочились бы косяки типа "я изменил функцию добавив туда аргумент, но исправил не все вызовы этой функции, и некоторые вызывают эту функцию с недостаточным количеством аргументов". Луа, падла такая, не просто радостно принимает такие баги, он даже не даёт никакого способа найти их.

В интернете есть статические анализаторы, но они для lua версий 5.1 и выше. Мне нужно для 5.0. Написать свой статический анализатор? По идее не сложно должно быть, lua маленький и простой язык, но с другой стороны, не сильно-то сложнее запилить маленький и простой язык со статической типизацией, который будет компилироваться в луа. И я бы давно сделал это, но для этого нужно уверенное понимание всяких нюансов lua, которые возможно обрести только через опыт программирования на луа. И поэтому собственно я и задаю вопрос: какие есть секретные тулзы для программирования на lua? Или может быть секретные приёмы? Может быть какой гайд по написанию unit-тестов для нетипизированных языков? Может быть руководство по проектированию API в нетипизированных языках? В идеале, конечно же, книжку с названием "Lua для C-программиста" или "системное программирование на lua" ("системное" -- это в смысле создания сложных систем, а не написания ядра ОС).


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 03:44 
Ох, не уверен, что смогу помочь. С функциями жрёт, т.к. для неё не баг, а фича (на сколько помню). Там даже можно несколько значений вернуть, при этом, если у вызывающего есть лишние переменные, они nil'ами будут, если же их недостаёт, ряд возвращаемых значений похерится. Точно не помню (я на нём эпизодически пишу скрипты для сборки C/C++ проектов при помощи premake), но думаю с аргументами такая же ситуация. Единственное, что могу посоветовать, книгу от автора: Роберту Иерузалимски "Программирование на языке Lua" (на русском существует). Правда она для 5.3. Не знаю, но м.б. существовало издание для 5.0, но я не интересовался. У меня её 3-е издание. На крайний случай думаю можно ориентироваться на книгу, а разницу искать в и-нете.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Ordu , 21-Ноя-18 06:22 
> Ох, не уверен, что смогу помочь. С функциями жрёт, т.к. для неё
> не баг, а фича (на сколько помню).

Да там всё фича. Некоторые из этих фичей можно пофиксить колупая _G, но вызовы функций можно пофиксить, разве что, собственными реализациями funcall и defun, и вызова/объявлений всех функций через них. Да и то, этот nil, который lua пихает везде по-умолчанию, нехило так будет мешать. Придётся запретить себе использовать nil как значение, и завести новый атом означающий "отсутствие значения", такой который надо указывать явно, чтобы он был передан, и соответственно тогда возникновение nil в любом месте можно будет считать ошибкой типа "попытка доступа к несуществующей/неинициализированной переменной". И я бы сделал это, но чтобы это было бы удобно использоваться, надо написать обёртки для всех библиотечных функций. И для всех функций из разных пакетов, которые я скачиваю из интернета. Опять же надо писать парсер lua, чтобы генерить эти обёртки (не писать же их вручную!), и опять же встаёт вопрос, не проще ли написать нормальный язык, который будет компилироваться в lua.

> Там даже можно несколько
> значений вернуть, при этом, если у вызывающего есть лишние переменные, они
> nil'ами будут, если же их недостаёт, ряд возвращаемых значений похерится.

Да-да. А в 5.0 ещё, если использовать эллипсис, и в качестве одного из аргументов передать nil, то все последующие аргументы пропадают. Потому что lua не может отличить неинициализированную переменную от переменной инициализированной значением nil (он даже несуществующую переменную не отличает от переменной инициализированной значением nil, хотя специальными трюками его можно отучить от этой дурной привычки), а итератор по аргументам останавливается, когда найдёт nil. Я вроде читал где-то, что в более старших версиях это пофиксили, но в 5.0 это именно так.

> Единственное, что могу посоветовать, книгу от автора: Роберту Иерузалимски "Программирование
> на языке Lua" (на русском существует). Правда она для 5.3. Не
> знаю, но м.б. существовало издание для 5.0, но я не интересовался.
> У меня её 3-е издание. На крайний случай думаю можно ориентироваться
> на книгу, а разницу искать в и-нете.

Да, я читал эту книгу. Первое её издание о 5.0. Это не то, что нужно. Вообще, в идеале, было бы круто что-то типа "Practical Lua" по аналогии с "Practical Common Lisp". Или "Learning Lua with entirely too many [somthing]" по аналогии с "Learning Rust with entirely too many linked lists". Что-нибудь, что берёт какую-то проблему, и разбирает разные подходы к её решению. Или что-то что берёт несколько проблем, и разбирает подходы к их решению. Доводя эти подходы до какого-то логического завершения. А этот Иерузалимски не парится совершенно, приводя в качестве примеров высосанные из пальца строки кода, которые не делают ничего полезного, кроме демонстрации фишки языка, которые не отвечают на вопрос, когда эту фишку языка уместно использовать, а когда проще обойтись без неё. Типа если читателю надо, пускай он сам выясняет это методом проб и ошибок. Но метод проб и ошибок -- это полгода программирования на языке, с очень скромным выхлопом в плане объёма рабочего кода. Зато груды нерабочих кусков кода, в процессе написания которых было выяснено, что подход X неудачен для решения проблем класса Y.

Впрочем... Может если посмотреть на более поздние издания, то там Иерузалимски исправился и придумал какие-то более реалистичные примеры? Я загляну на досуге.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено КГБ СССР , 21-Ноя-18 08:29 
Посмотри эту книжку:

google.com/search?q="Lua+Programming+Gems"+2008

В ней, вроде, как раз даны примеры применения с объяснением.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено hdkfhsfhsiosf , 23-Ноя-18 09:19 
Как вариант - написать внешний dll модуль на С/C#. Примеры есть в книге Иерусалимского и на сайте quikluacsharp.ru. Ещё вариант - через lua socket и json реализовать RPC. Я так связывал брокерский терминал quik c встроенным яп qlua (расширение lua 5.1) c luajit. C json/REST/http интерфейсом можно внешние модули на любом языке написать.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 02:32 
Стандартная библиотека у него слабая (видимо из-за ориентации на встраиваемость). А так, если Lua + стандартную библиотеку от Python, то вообще найс.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 21-Ноя-18 11:26 
Ну так что, сделаем сборку LuaJIT ZverDVD с JSON и мультипоточностью?)))

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 13:44 
> В качестве причин создания новой реализации Lua VM упоминается желание добиться более строгого соответствия спецификациям Lua 5.3 и предоставить удобный API для интеграции с приложениями языке Go.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Константавр , 17-Ноя-18 15:17 
не NiH а методичное и неотвратимое воплащение https://ru.wikipedia.org/wiki/Embrace,_Extend,_and_Extinguish

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Константавр , 17-Ноя-18 15:20 
ой. а куда делась кнопка "Редактировать"? Я ошибку поправить не могу.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 13:45 
Есть LuaJIT и без Microsoft

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено proninyaroslav , 17-Ноя-18 14:13 
Microsoft активно пытается внедрится в сферу разработки свободного софта. Мило

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено cr2032 , 17-Ноя-18 14:25 
а потом сертификаты требовать для фреймворка, знаем этот бесплатный энтерпрайз

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 09:52 
> а потом сертификаты требовать для фреймворка, знаем этот бесплатный энтерпрайз

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Андрей , 17-Ноя-18 14:45 
Виртуалка в виртуалке, виртуалкой погоняет. плюс ещё не спешный gO, который как и та же жаба с питоном -нетормозит.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 15:22 
>  DCLua, GoLua, Golang Lua, go-lua-vm и glua

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 16:26 
Можно ещё попробовать на Lua интерпретатор Go написать...

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Андрей , 18-Ноя-18 02:58 
Ну, сам Go легко переписали на самом же Go, так что, видать, располагает к написанию компиляторов на этом языке.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено hdkfhsfhsiosf , 23-Ноя-18 08:54 
уже есть https://github.com/gijit/gi

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено coinofficial , 18-Ноя-18 09:10 
Каждый go-программист считает нужным написать свой web-сервер. Их наверное уже за пару десятков на нём.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено 123 , 18-Ноя-18 11:14 
Программистов го? :)

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 11:07 
fixed: Каждый гопник считает нужным написать свой web-сервер.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено username , 19-Ноя-18 15:23 
Да, но не у каждого выходит удобный caddyserver в три строчки делающий все что от него нужно.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено интеллигентный разработчик , 17-Ноя-18 16:21 
> В качестве причин создания новой реализации Lua VM упоминается желание добиться более строгого соответствия спецификациям Lua 5.3 и предоставить удобный API для интеграции с приложениями языке Go.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено ыфвыфв , 19-Ноя-18 16:38 
Не проше. cgo хоть и существует, но там много ограничений получается.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено freehck , 17-Ноя-18 17:14 
А с производительностью-то у поделия как?

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено пох , 17-Ноя-18 18:12 
"компилируецца очень быстро".
А компилятор go на нем еще недописали, пока непонятно что там со скоростью.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено pavlinux , 17-Ноя-18 18:20 
>  со скоростью.

Оно те надо?


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 23:08 
Не, ты чо. Пойду ядро Linux на JS перепишу...

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Дмитрий Кондаков , 19-Ноя-18 20:37 
Опоздал.
https://copy.sh/v86/?profile=linux26

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Анонн , 19-Ноя-18 20:47 
> Опоздал.
> https://copy.sh/v86/?profile=linux26
> x86 virtualization in JavaScript, running in your browser and NodeJS

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



"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 03:11 
Это VirtualBox переписанный на js. До ядра они пока ещё не добрались (пока не добрались).

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 20:21 
Ни слова про производительность

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 09:56 
> Ни слова про производительность

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

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


"Microsoft наступила на хвост собственной песне.  Уже почти??"
Отправлено Andrey Mitrofanov , 19-Ноя-18 15:55 
>> Ни слова про производительность
> Так, после _слова_ "Микрософт" -- разворачиваемся и уходим.
> Какая, в Красную Армию!?, "производительность?7

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

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


"Microsoft наступила на хвост собственной песне.  Уже почти??"
Отправлено КГБ СССР , 19-Ноя-18 17:45 
Вижу, там четырёхглазый стремительно побеждает мировую буржуазную русофобию.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 17-Ноя-18 20:22 
Осталось интерпретатор Го на луа запилить и пусть друг друга запускают

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено нах , 19-Ноя-18 14:42 
чего это вдруг - интерпретатор? Компилятор.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Gannet , 17-Ноя-18 21:36 
Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 02:29 
еще и доплачивать будут

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 06:10 
Я читал их финансовые отчёты. Они знают, что делают. Чем больше перетянут одеяло на себя, тем лучше для них.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 10:00 
> Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.

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

https://www.ixbt.com/news/2018/11/08/bill-gejts-predstavil-u...

#таг


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено нах , 19-Ноя-18 14:49 
да ладно, у нас в каждой деревне уже километров за 100 от мкада такой.

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

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Gannet , 19-Ноя-18 22:47 
>> Скоро Мелкософт всё будет раздавать на шару. Какие молодцы ребята-филантропы.
> Да, да!  Тут один мазоизвестный филантроп вложил кучу денег, чтоб завалить
> небелокожий мир его же брикетированным г---ом и _стать_ _с_ _этого_ ещё-о-о-о-О-О-о
> богаче.
> https://www.ixbt.com/news/2018/11/08/bill-gejts-predstavil-u...
> #таг

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

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 06:20 
Корпорасты весьма предсказуемы. Они помогают СПО только в тех областях, где им не угрожает конкуренция.

А зачем в принципе нужны лицензии типа MIT? Никогда не понимал пользы таких лицензий как BSD, MIT. Создатели такого ПО сами не получают выгоды от своего труда и к тому же помогают корпорастам создавать коммерческие продукты на основе их кода. Раньше мне казалось, что люди отдают свои знания бесплатно, чтобы потребителям не пришлось за них переплачивать. В случае BSD мне непонятна мотивация разработчиков. Зачем бесплатно помогать проприерастам? Бесплатно помогая проприетарщикам создавать коммерческие продукты, вы помогаете только проприетарщикам и никому более. В то время как проприетарные законы постепенно ужесточаются. Проприетарщики собирают всё больше бабок, а разработчики BSD ПО такие добрые, что готовы им помочь создавать коммерческие продукты. Потому что боитесь прослыть радикалами? Возможно, кто-то рассчитывает, что корпорации будут больше вкладывать в свободное ПО. Ровно в той мере в какой необходимо для их интересов, но так чтобы свободное по не могло составить конкуренции. На благодарность проприетарщиков никогда не стоит рассчитывать. BSD - это какой-то странный альтруизм выгодный для корпораций.
У меня в воображении возникает человек, который решил помочь бедным, раздавая деньги торговцам. В конце концов вы хотите победы свободного По или нет? Если да, то зачем бесплатно работаете на корпорации.
MIT и BSD по сути помогают проприетарщикам выигрывать конкуренцию. Они как бы несамостоятельный, работающий на подхвате у корпораций продукт, поэтому они никогда не будут полноценными альтернативами проприетарным продуктам. У Linux есть хотя бы небольшой шанс, у BSD нет вообще никаких. Если бздяшники, митчики захотят сделать конкурента какому-либо проприетарному продукту, проприетарщики тут же возьмут бесплатно их код и сделают лучше - опенсос опять в пролете. Оно вам надо?
GPL лицензия жестока и бескомпромиссна, да. Но это жестокость конкуренции на рынке. Когда проприетарщики вешают огромные штрафы на домохозяек, скачавших пиратский фильм, никто из проприетарных тупых ботов не вопит, что они упоролись. А если ты сторонник GPL значит ты псих.


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 06:59 
На мой взгляд, они делают это, чтобы их имя упомянули в каком-нибудь успешном коммерческом продукте. А там может и работу предложат. Кроме как почесать ЧСВ и потанцевальные перспективы иных поводов быть не может.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 15:54 
>И если та в свою очередь доработает код, она ещё может и вернуть наработки, которые принесут пользу первым.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено irinat , 19-Ноя-18 21:01 
Если проект открыт под MIT или BSD, проще и дешевле нанять авторов проекта для решения нужной тебе задачи, чем тратить время на то, чтобы вникнуть в детали работы. Наличие открытого кода не означает, что порога вхождения в кодовую базу нет. На всё нужны ресурсы.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено KonstantinB , 20-Ноя-18 00:00 
https://lionet.livejournal.com/31952.html

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено neit95 , 21-Ноя-18 03:32 
Я думаю тут много вариантов:
1) Некоторый самопиар для вероятного последующего попадания в какие-нибудь годные конторки на работу.
2) Заброшенные проекты. В этом случае авторам уже вообще по бую. Что хотели от этого кода, они уже получили (или не смогли получить и забили).
3) Отпачковывающиеся проекты. Писала компания N какие-то продукты. А потом смотрит: годный фреймворк выходит. Допилили до отдельного проекта, подтянули у себя куда надо. А далее что? Если он не критичный супер секретный компонент системы, и если лень его как-то платно продвигать, почему бы и не выбросить в опенсорс? Для опенсорса - это потенциально качественно написанный продукт. Для компании - орда халявных тестеров. Симбиоз прям. Кстати, смотрю частое явление у таких гигантов, как Google, Яндекс, Facebook и др.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 10:04 
а разве не проще портировать нативный lua?

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 11:05 
Потому что EEE.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 18-Ноя-18 17:20 
У Cgo проблемы с производительностью. Оно не для всего применимо.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 10:03 
>проблемы с производительностью. Оно не для всего применимо.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним , 19-Ноя-18 05:27 
Вполне веротяно, что они хотят использовать всю силу асинхронности GO?

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Аноним666 , 19-Ноя-18 08:05 
бесплатный хинт микрософту - срочно нужен ассемблер написанный на js

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено qwerty_qwerty1 , 19-Ноя-18 09:09 
Хм. А зачем  Микрософт не та компания что бы делать что то просто так и затем выкинуть, или ее Гуугл заразил.

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 10:10 
> Хм. А зачем  Микрософт не та компания что бы делать что
> то просто так и затем выкинуть, или ее Гуугл заразил.

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

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

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Попугай Кеша , 19-Ноя-18 09:47 
Что это за такое? И зачем? И зачем тратить на это время?

"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 10:53 
> Что это за такое? И зачем? И зачем тратить на это время?

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Мууу , 19-Ноя-18 10:48 
Тройной изврат - Микрософт, Lua и Го.

"Мазазинчик Microsoft опубликовал реализацию Lua VM, написану..."
Отправлено Andrey Mitrofanov , 19-Ноя-18 11:01 
> Тройной изврат - Микрософт, Lua и Го.

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено irinat , 19-Ноя-18 20:56 
> отсутствует поддержка сопрограмм

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено X4asd , 19-Ноя-18 21:46 
сопрограммы довольно базовая часть Lua .

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


"Компания Microsoft опубликовала реализацию Lua VM, написанну..."
Отправлено Andrey Mitrofanov , 20-Ноя-18 10:17 
> сопрограммы довольно базовая часть Lua .
> если они не сделали их -- то спрашиается -- на кой хрен
> было вообще делать Lua

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

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