LINUX.ORG.RU

посоветуйте встраиваемый скриптовый язык

 , ,


2

5

Есть относительно большая аппа на C++ с большим количеством всего захардкоженного. Эволюция дошла до того, что народ поверил в нужность конфигов и расширения функций пользователями, дабы не компилировать на каждый чих и не лезть грязными лапами в код, ломая всё на своём пути. Народ попробовал разные язычки типа python и AngelScript встраивать, но оно не подошло в силу тормознутости и больших размеров а также по ряду других параметров, в итоге сформировался список требований:

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

2. Нужна возможность лёгкого расширения синтаксиса дабы снизить до минимума объемы кода, гоняемого в скрипте, за счёт синтаксилечких конструкций.

3. Нужна скорость, особенно важно, чтобы код, состоящиё только из вызова определённых в C/C++ конструкций выполнялся максимально быстро. Также декларативный код должен выполняться максимально быстро.

4. Нужно чтобы была поддержка многопоточности и многоконтекстности, то есть выполнять много независимых скриптов сразу.

Пока я смотрю больше на Lua, но народу нравится больше S-выражения, поэтому рассматриваю ещё https://github.com/ashinn/chibi-scheme

Есть какие ещё варианты?

★★★★★

Последнее исправление: slapin (всего исправлений: 2)
Ответ на: комментарий от monk

И как...?

По пункту 0.

И как...?

А вообще — да, это это верно. Если вы чего-то не знаете или понимаете, то надо именно задавать вопросы, а разбрасывать во всеуслышание ложными заявлениями.

Однако есть одна загвоздка. Вы *не можете* этого не знать — хотя бы потому, что именно об этом и именно мы с вами здесь, на ЛОРе, уже разговаривали — я прекрасно это помню. Вы тогда, вроде как, все поняли.

Так что что-то с вами не так. -_-

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Так, хорошо, с вами мы это заблуждение, кажется, не разбирали. :-)

По пункту 0 - это *.o. Никакой существенной разницы с .so.

Не-не-не.

По пункту 0 — это когда вы свободную библиотеку распространяете в составе вашей несвободной программы. Как она там сопряжена с ней: используется ли какая-то компоновка, и используется ли вообще — никакого значения *не имеет*. А по пункту 1, соответственно, — это когда вы ее не распространяете.

И вообще, для того, чтобы понять, что он вас требуют лицензии авторского лева ГНУ, их читать совершенно не обязательно. Достаточно лишь знать, для чего они вообще существуют.

Так, задача GNU Lesser GPL — обеспечить важнейшие права пользователей свободной библиотеки даже в том случае, когда она включена в состав какой-то несвободой программы.

Вот, собственно и вся хитрость: если вы пишете проприетарщину, то вы должны вернуть вашим пользователям право свободно использовать, изменять, распространять в измененном или нет виде включенную в вашу проприетарщину свободную библиотеку. Вернуть как де-юре, так и де-факто.

А уж как там это будет выглядеть с технической стороны: есть какие-то .o, .so, .go и т. д. или нет — то уж вам в вашем частном случае виднее.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

По пункту 0 — это когда вы свободную библиотеку распространяете в составе вашей несвободной программы. Как она там сопряжена с ней: используется ли какая-то компоновка, и используется ли вообще — никакого значения *не имеет*

Для того, чтобы перелинковать программу («to recombine or relink the Application with a modified version of the Linked Version») она должна состоять из *.o. И это само по себе гарантирует, что библиотека, поставляемая с программой, тоже будет в *.o

Конечно, можно вообразить, как закрытая программа (набор *.o) поставляется с исходниками библиотеки, которые пользователь сам компилирует и линкует, но это можно воображать только спора ради.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Для того, чтобы перелинковать программу она должна состоять из *.o.

За пределами ГНУ и Юникса мир не заканчивается. За пределами программ в машинных кодах — тем более. А статическая компоновка — вообще раритет.

библиотека тоже будет в .o

Не, ну конечно не возбраняется еще и это предоставить, но нахрена?!! В исходниках она.

но это можно воображать только спора ради.

???

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

А статическая компоновка — вообще раритет.

Зачем ты тогда вообще отвечал на комментарий про затруднения при статической компоновке?

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Я отвечал на комментарий, содержащий клевету в адрес GNU Lesser GPL. Делал я это в первую очередь потому, что это был комментарий на мое письмо.

С затруднениями со статической компоновкой кто-нибудь, вероятно и сталкивается, но со стороны GNU Lesser GPL ни одного из них не исходит. Она вообще ее никак не выделяет.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Ты принимал участие в выпуске и поддержке проприетарного продукта, содержащего статически скомпонованные LGPL библиотеки?

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Извините, мифы о свободных лицензиях — это серьезно, и потому я не буду уходить в сторону от темы. И в частности, не буду уходить на личности.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Серьёзность определяется количеством ресурсов, которое лично ты готов вложить. Можешь что угодно тут обещать. Риски же не на тебе.

И для популяризации стоило всё же писать нормально, а не в трололо-стиле. Мол, лицензия такая, линковаться можно так-то при таких-то условиях. Нужно осознавать, что условия эти для кого-то могут оказаться неприемлемыми.

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Серьёзность определяется количеством ресурсов, которое лично ты готов вложить.

Пардон, что-то вообще не в тему.

Серьезность мифа определяется во-первых его распространенностью, а во-вторых его устойчивостью, ну и в-главных — его тлетворностью.

Мифы о свободных лицензиях дичайше распространены и они очень устойчивы. Выше прекрасный тому пример. Товарищ monk год назад, как я сейчас уточнил, самостоятельно [0] прояснил для себя вопрос о требованиях GNU Lesser GPL. И вот сейчас он вновь безапелляционно ретранслирует [1], что-де «LGPL также запрещает встраивать [библиотеку] в бинарник». У меня нет никаких оснований подозревать его в злонамеренности, то есть остается думать, что за прошедшее время он успел начитаться где-то мифотворчества в количестве достаточном для того, чтобы его собственное умозаключение заместилось внушенным.

Ну и они, очевидно, вредны.

[0] Лицензия LGPLv3 для Qt5. Что на практике означает LGPLv3 при линковке с таким кодом? (комментарий)
[1] посоветуйте встраиваемый скриптовый язык (комментарий)

Можешь что угодно тут обещать.

Спасибо, но думаю, что я лучше по-старинке продолжу воздерживаться от обещаний в Интернете.

И для популяризации стоило всё же писать нормально, а не в трололо-стиле.

Стиль диктует окружение: аудитория и собеседники, если это беседа. Одно дело — статья в журнале, а другое — нить на ЛОРе.

Мол, лицензия такая, линковаться можно так-то при таких-то
условиях.

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

Так что есть мнение, что на категоричную ложь надо в первую очередь отвечать не менее категоричным «ложь!». А потом уже можно пускаться в раз’яснения.

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

Ну эти кто-то, я думаю, не маленькие, и решать за них не надо. Когда они сложат полную картину, сами разберутся, что им приемлемо, а что нет.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

библиотека тоже будет в .o

Не, ну конечно не возбраняется еще и это предоставить, но нахрена?!!

Чтобы пользователю не нужно было ее компилировать.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Чтобы пользователю не нужно было ее компилировать.

Благородно, но бессмысленно.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

А статическая компоновка — вообще раритет.

Есть как минимум два современных дистрибутива линукса со статической компоновкой.

monk ★★★★★
()
Ответ на: комментарий от Zmicier

По пункту 0.

Это уже не один бинарник. А ещё «Minimal Corresponding Source» и «Corresponding Application Code». То есть если даже я пишу freeware, то меня потенциально могут засудить за нарушение лицензии в тот момент, как я его перестану предоставлять. Или вместо бинарника придётся предоставлять архив с бинарником и кучей мусора.

monk ★★★★★
()
Ответ на: комментарий от tailgunner

По пункту 0 - это *.o. Никакой существенной разницы с .so.

Если компилятор умный и делает inline, то .o не поможет.

monk ★★★★★
()
Ответ на: комментарий от monk

По пункту 0 - это *.o. Никакой существенной разницы с .so.

Если компилятор умный и делает inline, то .o не поможет.

Не поможет в чем?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Не поможет в чем?

that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work

Новая версия не будет использоваться, если существующая версия заинлайнилась в объектный код самой программы.

monk ★★★★★
()
Ответ на: комментарий от monk

Если компилятор умный и делает inline, то .o не поможет.

Не поможет в чем?

that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work

Это не ответ на мой вопрос.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Это не ответ на мой вопрос.

В смысле? Это ответ на вопрос «в чём?». Если код LGPL библиотеки заинлайнился, то условие 0 выполнить невозможно. И .o не поможет, так как он не будет содержать ссылок на .o от библиотеки, а будет содержать скомпилированные функции из неё.

monk ★★★★★
()
Ответ на: комментарий от monk

Это не ответ на мой вопрос.

В смысле?

В прямом. Я спросил - «в чем *.o не помогут?».

Если код LGPL библиотеки заинлайнился, то условие 0 выполнить невозможно.

В общем, это не так (если бы это было так, то закрытые приложения не могли бы использовать glibc), но просто ради спора - допустим, что это так. И? Ты утверждаешь, что инлайнинг помешает мне поставлять закрытую программу в виде набора *.o-файлов, при этом соблюдая LGPL?

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от tailgunner

В общем, это не так (если бы это было так, то закрытые приложения не могли бы использовать glibc)

В общем случае так и есть. Смотри пример про Maple. Сначала всё, что лежало в /opt тащило за собой собственную версию glibc или требовало фиксированной версии. В современных версиях придумали версионирование символов, что ломают саму идею динамических библиотек.

Ты утверждаешь, что инлайнинг помешает мне поставлять закрытую программу в виде набора *.o-файлов, при этом соблюдая LGPL?

Конечно. Тебе придётся придумывать какой-то инструмент, который из новой версии библиотеки и твоего .o получит «modified version of the Linked Version to produce a modified Combined Work».

Со стандартным .o такое вообще невозможно, так как на коде не написано, откуда он взят. И, например, кусок

if (lib_f1()) lib_f2();
может быть вообще выкинут, если компилятор может убедиться, что функция lib_f1 чистая и всегда возвращает 0. А в следующей версии lib_f1 может читать конфигурационный файл, но в .o даже места нет, куда её вставить.

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от tailgunner

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

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от monk

В общем, это не так (если бы это было так, то закрытые приложения не могли бы использовать glibc)

В общем случае так и есть.

Твое утверждение опровергается практикой.

Смотри пример про Maple. Сначала всё, что лежало в /opt тащило за собой собственную версию glibc или требовало фиксированной версии.

Это не имеет ровно никакого отношения к лицензионным проблемам.

В современных версиях придумали версионирование символов, что ломают саму идею динамических библиотек.

фейспалм.жпг

Ты утверждаешь, что инлайнинг помешает мне поставлять закрытую программу в виде набора *.o-файлов, при этом соблюдая LGPL?

Конечно

Совершенно очевидно, что это не так: просто сделай *.o-прокладки, которые содержат инлайненные функции, и опубликуй их исходники на случай, что кого-то не устроит просто линковка *.o

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Совершенно очевидно, что это не так: просто сделай *.o-прокладки, которые содержат инлайненные функции, и опубликуй их исходники на случай, что кого-то не устроит просто линковка *.o

Вот-вот. В два раза больше кода, потеря производительности и куча проблем. С учётом того, что вынести придётся также всё, что использует хоть какие-то макросы (для Guile это все SCM*), то код будет напоминать мелко нарезанные спагетти.

monk ★★★★★
()
Ответ на: комментарий от tailgunner

Твое утверждение опровергается практикой.

Я же тебе только что дал ссылку из практики про Maple. Если бы Maple линковался статически и glibc был под LGPL и не был системным, то у Maple были бы проблемы.

Это не имеет ровно никакого отношения к лицензионным проблемам.

С Glibc разумеется. Она же системная. И в данном случае использовалась динамическая линковка.

monk ★★★★★
()
Ответ на: комментарий от monk

Совершенно очевидно, что это не так: просто сделай *.o-прокладки, которые содержат инлайненные функции, и опубликуй их исходники на случай, что кого-то не устроит просто линковка *.o

Вот-вот. В два раза больше кода

Это, конечно, чушь. По сранению с линковкой к *.so, это в бесконечность раз больше кода.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Сформулируй тезисы, которые ты пытаешься доказать.

LGPL запрещает влинковывать библиотеку в распространяемый не (L)GPL бинарник.

monk ★★★★★
()
Ответ на: комментарий от monk

LGPL запрещает влинковывать библиотеку в распространяемый не (L)GPL бинарник.

LGPL требует, чтобы библиотеку можно было заменять. Если ты найдешь способ заменять влинкованную в не-LGPL бинарь библиотеку (сборка из *.o), ты соблюдешь LGPL

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Если ты найдешь способ заменять влинкованную в не-LGPL бинарь библиотеку (сборка из *.o), ты соблюдешь LGPL

Именно про это я и пишу. Что вместо простого выкладывания бинарника я должен идти на много-много дополнительных телодвижений. Причём если я не озаботился тем, чтобы пользователь не мог скачать бинарник без всего этого мусора (исходников библиотеки + .o файлов), то я ещё и попадаю на обязательство пожизненно держать архив исходников всех скачанных у меня программ. А если сервер полетел, то привет нарушение LGPL: я не предоставил кому-то из получателей бинарника соответствующие исходники и .o файлы.

P.S. Поэтому под (L)GPL я распространяю свои программы только в исходниках. Кому сильно надо — скомпилирует. А попадать на ситуацию «вот я скачал программу 5 лет назад, а теперь ты должен мне исходники» мне не улыбается.

monk ★★★★★
()
Ответ на: комментарий от monk

Для коммерческого софта в принципе терпимо. В конце-концов там будет договор о покупке. А вот если программа бесплатно раздаётся, то ожидаются проблемы.

monk ★★★★★
()
Ответ на: комментарий от monk

Если ты найдешь способ заменять влинкованную в не-LGPL бинарь библиотеку (сборка из *.o), ты соблюдешь LGPL

Именно про это я и пишу.

А, то есть

monk> Если компилятор умный и делает inline, то .o не поможет

было именно об этом. Окей.

Поэтому под (L)GPL я распространяю свои программы только в исходниках

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

Твои страхи - они твои личные.

tailgunner ★★★★★
()
Ответ на: комментарий от monk

Разве GPL не трактует распространение ПО как активное действие? Т.е. ты заключил с кем-то договор и «распространил» ему gpl программу вместе с исходниками. А ежели у тебя есть публичный архив из которого кто-то там чего-то где-то скачал, то это исключительно его трудности?

P.S. I Am Not A Lawer.

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

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

Юридически это называется «оферта». То есть, если ты сделал публичный архив, в котором софт под GPL, то либо выполняешь условия GPL (в частности обязан предоставить скачавшим софт исходники, можно по запросу), либо нарушаешь лицензию со всеми вытекающими последствиями вплоть до ст. 146 УК РФ.

В реальности, конечно, на большую часть текста лицензии всем плевать. Суды и полиция смотрят на платно/бесплатно и оплачено ли если платно. В то время как, например, в лицензиях MS есть запрет допускать к лицензированному ПО третьих лиц. Например, соседа к домашнему компьютеру, или специалиста по настройке кассы к рабочему.

Так и с GPL. Если автор программы (кстати, кто именно, если ПО не передано FSF?) не подаст в суд РФ за нарушение его прав с указанием материального ущерба, то всем плевать, как именно GPL код на самом деле используется.

monk ★★★★★
()
Ответ на: комментарий от monk

Поэтому под (L)GPL я распространяю свои программы только в исходниках
попадать на ситуацию «вот я скачал программу 5 лет назад, а теперь ты должен мне исходники» мне не улыбается.

Твои страхи - они твои личные.

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

Так что оставлять это так не стоило бы.

Zmicier ★★★★★
()
Ответ на: комментарий от monk

По пункту 0.

Это уже не один бинарник.

Понятия не имею. Вы какой-то сборочный процесс подразумеваете в голове, но поскольку вы его не озвучиваете, я знать, чего и сколько должно получиться, не могу.

Если же вы хотите заявить, что GNU Lesser GPL ограничивает вас в возможности облечь сборку в *любую* достижимую форму, то это *неверно*.

А ещё «Minimal Corresponding Source» и «Corresponding Application Code».

Да, без них пользователь будет ущемлен в праве свободно изменять библиотеку.

То есть если даже я пишу freeware, то меня потенциально могут засудить за нарушение лицензии в тот момент, как я его перестану предоставлять.

«Его» — это вашу проприетарщину, да?

Вы обязались зачем-то поставлять исходники по запросу? Поздравляю, вы можете претендовать на звание уникального человека — я пока не знаю ни одного, кто бы сделал эту глупость.

(Тем более, что современные лицензии ГНУ и не разрешают давать такие обязательства, кроме случаев распространения об’ектников на материальном носителе.)

Или вместо бинарника придётся предоставлять архив с бинарником и кучей мусора.

Просто чушь.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от monk

Если бы Maple линковался статически и glibc был под LGPL и не был системным, то у Maple были бы проблемы.
Glibc разумеется. Она же системная.

Вы опять все перепутали. И даже перевернули вверх ногами.

«Системные бибилиотеки» — это то, что позволяет программам под GNU (Lesser) GPL вопреки всему остальному зависеть от компонентов под *несовместимыми* условиями (в том числе несвободными), а равно и от вообще не распространяемых.

Maple же — не программа под GNU (Lesser) GPL.

Zmicier ★★★★★
()
Ответ на: комментарий от monk

вместо простого выкладывания бинарника я должен идти на много-много дополнительных телодвижений.

Вместо написания своей проприетарщины с нуля, вы *можете* по милости владельцев библиотеки под GNU Lesser GPL включить ее в свою программу как часть, сохранив за пользователями лишь скромное право свободно изменять эту самую часть.

Авторам свободных программ *никаких* дополнительных телодвижений делать не требуется.

Причём если я не озаботился тем, чтобы пользователь не мог скачать бинарник без всего этого мусора (исходников библиотеки + .o файлов), то я ещё и попадаю на обязательство пожизненно держать архив исходников всех скачанных у меня программ.

Вызывающая ложь.

Будьте добры, озаботьтесь уже ознакомиться с предметом, о котором имеете бесстыжесть так уверенно судить уже не первый год. Хотя бы на уровне прочтения ЧаВО [0], если на прочтение оригинала чего-то не хватает.

[0] https://www.gnu.org/licenses/gpl-faq.ru.html

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от ugoday

IANAL, TINLA.

Разве GPL не трактует распространение ПО как активное действие?

«Распространение» лицензии ГНУ раньше не определяли, а в актуальных версиях оно переименовано в «передачу» (conveying), и переименовано именно затем, чтобы невозбранно дать ему определение:

To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well.

To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.

Нужен перевод или комментарии?

Т. е. ты заключил с кем-то договор и «распространил» ему программу [под GPL] вместе с исходниками.

Обнародовав произведение под свободной лицензией (а на самом деле шире — под открытой, то есть вплоть до shareware), вы в некотором смысле заключили договор со всем миром.

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

В контексте вопроса — конечно его. Не ваши же. То есть, грубо говоря, вот-де сборка, а вот — то, из чего она была получена. На этом ваши обязательства кончаются.

То есть вам, конечно же, никто не запрещает дать какие-нибудь дополнительные гарантии. Более того — старые версии лицензий ГНУ еще и дозволяли дать обязательство предоставлять исходники и прочее по запросу *вместо* них самих. Но поскольку люди в массе своей не monk’и, то есть сами себе не враги, такие обязательства едва ли кто не давал.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 3)
Ответ на: комментарий от Zmicier

А кто запретит выдать исходники не «сию секунду», а попозже, когда время будет свободное?

anonymous
()
Ответ на: комментарий от anonymous

Я не вполне понял вопрос. Можно более развернуто, с примерами?

(Еще лучше, если все это будет в особо отведенной для него нити, а то здесь и так в офтопик залезли по самые уши.)

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Хотя бы на уровне прочтения ЧаВО [0]

Ну вот конкретная ссылка из ЧаВО: https://www.gnu.org/licenses/gpl-faq.ru.html#SourceAndBinaryOnDifferentSites

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

А вот соответствующий кусок из самой лицензии (GPL3, 6d):

Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements.

«these requirements» разве не являются требованием предоставить доступ к исходникам всем, кто скачал объектный код?

monk ★★★★★
()
Ответ на: комментарий от monk

Ну вот конкретная ссылка...

Молодца, это нашли. Теперь еще можно бы найти там про втюхивание «мусора» (как вы изволили назвать материалы обеспечивающие право на свободу модификации) — там это, емнип, особо освещено.

Ну и, конечно, было во сто крат лучше, если бы вы это сделали заранее, и не писали своей ахинеи.

«these requirements» разве не являются требованием предоставить доступ к исходникам всем, кто скачал объектный код?

«These requirements» — это отсылка к тому, что изложено в том же пункте чуть ранее: «Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge».

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

offer equivalent access to the Corresponding Source in the same way through the same place at no further charge

Вот это. Здесь нету явного ограничения времени.

Если же есть в формулировке «столько же времени, сколько вы будете распространять объектный код», то получается, что если получатель скачал программу, но не скачал все исходники (причём именно используемой версии), то он не может никому передать скачанную программу (в частности, сервер с ОС GNU/Linux нельзя передать другой организации) из-за https://www.gnu.org/licenses/gpl-faq.ru.html#UnchangedJustBinary. То есть abandonware в случае GPL ещё большая проблема, чем для коммерческого ПО.

P.S. Надо озаботиться скачиванием исходников всего используемого GPL софта, начиная с Debian и 7-Zip.

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от monk

offer equivalent access to the Corresponding Source in the same way through the same place at no further charge

Вот это. Здесь нету явного ограничения времени.

Продолжайте наблюдения.

получается, что если получатель скачал программу, но не скачал все исходники (причём именно используемой
версии), то он не может никому передать скачанную программу (в частности, сервер с ОС GNU/Linux нельзя
передать другой организации) из-за https://www.gnu.org/licenses/gpl-faq.ru.html#UnchangedJustBinary. То есть
abandonware в случае GPL ещё большая проблема, чем для коммерческого ПО.

Вот уж воистину, ссы в глаза — все божья роса.

Вы только что нагородили с три короба вранья, вам на них ответили, на что вы нитчоже сумняшеся делаете следующий наброс, покоряя новые вершины абсурда:

то есть abandonware в случае GPL еще большая проблема, чем для [несвободного] ПО.

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

чем для коммерческого ПО

Остальным напоминаю, что (не)свободная программа и (не)коммерческая — это ортогональные понятия.

в частности, сервер с GNU/Linux нельзя передать другой организации

Не осилили ЧаВО, ограничились парой пунктов. Печаль.

Надо озаботиться скачиванием исходников ... начиная с Дебиана

Вот, да, займитесь. Хоть зеркало подымите. Пусть и одно из многих сотен, но хоть какая-никакая польза.

Zmicier ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.