LINUX.ORG.RU

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

 , ,


2

5

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

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

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

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

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

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

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

★★★★★

Последнее исправление: slapin (всего исправлений: 2)

Ответ на: комментарий от 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 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.