LINUX.ORG.RU
ФорумTalks

[programming] Скриптовые языки


0

0

Вот есть приложение. Цивилизация 4, например. Да и не важно какое приложение. Но основная часть написана на С++. А многое на скриптовом языке (Python, вроде).

Внимание, вопрос: Какую функциональность приложения (теперь абстрактного) лучше разрабатывать на скриптовых языках программирования, чем компилируемых?

Именно интересует область применения.

Re: [programming] Скриптовые языки

Плюсую к вопросу. Тоже не понимаю толком, где должна проходить грань.

Manhunt ★★★★★ ()

Re: [programming] Скриптовые языки

веб-сфера - скриптовые языки, так же где важна скорость разработчки (а не скорость выполнения).

Или допустим я делаю концепты в ruby\Qt (потому что быстро), а потом переношу на c++\Qt

f3ex ★★ ()

Re: [programming] Скриптовые языки

Эм, там где скриптовость не будет бить по производительности и будет давать прирост скорости разработки?
Ваш К.О.
На самом деле тут вопрос в конкретном приложении и его архитектуре. Скажем если какие-то ресурсы грузятся один раз где-то в фоне, то можно эти ресурсы грузить скриптами или сами ресурсы могут быть скриптами. Так частенько в играх делают. Также гуй может быть на скриптовом языке, но при условии что не будет страдать производительность и не будет увеличиваться сильно потребление памяти и тд - а это уже возникается вопрос что за гуй и как он сделан.
В принципе значительную часть логики программ можно вынести в виде скриптов, и лиш сильножрущие операции писать на том же С или С++, так пистонисты делают частенько.
Главный вопрос какой профит получится. Потому что при разгильдяйском отношении можно не только не получить преимущества, но заработать гемороя.

ixrws ★★★ ()
Ответ на: Re: [programming] Скриптовые языки от f3ex

Re: [programming] Скриптовые языки

Веб сфера ведь тоже разная бывает, вон гугль не зря занимается оптимизация пистона, так как жрёт много. Не всякая веб сфера непотребна к скорости.

ixrws ★★★ ()
Ответ на: Re: [programming] Скриптовые языки от ixrws

Re: [programming] Скриптовые языки

У гугля очень большие запросы. Я думаю не стоит сравнивать нагрузку на гугли к примеру с нагрузкой на ЛОР.

f3ex ★★ ()
Ответ на: Re: [programming] Скриптовые языки от f3ex

Re: [programming] Скриптовые языки

Не стоит, но и то и другое - это веб. Просто если речь о небольших веб-сайтах - то так и надо писать. А то ведь вебом считаются и приложения, для которых веб - это лиш небольшая морда. Тоже самое касается и обычных приложений. Чем больше, тем серьёзнее должен быть подход к архитектуре и тем взвешеннее должно быть решение о использовании ЯП. А то заюзать сначала пистон, а потом переписывать придётся:)

ixrws ★★★ ()

Re: [programming] Скриптовые языки

Да любую. Например perl подходит для очень многих задач.

Sun-ch ()

Re: [programming] Скриптовые языки

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

EmStudio ()

Re: [programming] Скриптовые языки

Дык ядро на Си, а платформозавизимую обертку и подгрузки библиотек — на скриптах, чтоб если что поправить можно было. Не?

gkrellm ()
Ответ на: Re: [programming] Скриптовые языки от ixrws

Re: [programming] Скриптовые языки

Такое ощущение, что большая половина ЛОРа у нас работаеют в таких проектах как Гугл.

f3ex ★★ ()

Re: [programming] Скриптовые языки

ИМХО, нужно изначально писать на Питоне, а потом профилировать что и где долго работает или тормозит. Просто если что-то тяжелое делать на питоне - будет видно где он тормозит даже визуально и даже при самой ранней стадии разработки. Ну, я игр не писал, но если бы писал - писал бы так.

kost-bebix ★★ ()
Ответ на: Re: [programming] Скриптовые языки от f3ex

Re: [programming] Скриптовые языки

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

ixrws ★★★ ()

Re: [programming] Скриптовые языки

>Какую функциональность приложения (теперь абстрактного) лучше разрабатывать на скриптовых языках программирования, чем компилируемых?

всю, какую только можно. вот что нельзя (по производительности, или ещё по каким причинами) - то пишем на C (C++, Java, whatever). вот и всей грани

jtootf ★★★★★ ()

Re: [programming] Скриптовые языки

> на скриптовых языках программирования, чем компилируемых?

facepalm.svg Назовешь мне пару-тройку некомпилируемых скриптовых языков?

Если взять для примера Си и Питон, то на Си нужно писать то, что должно быть гарантированно и предсказуемо быстрым, и/или должно интегрироваться в программы на других языках через стандартный интерфейс вызовов (а не какой-нибудь вид RPC).

Альтернативно, как уже сказано выше - профилирование и переписывание на Си кусков, где быстродействия Питона не хватает (а уже написанный Питон-код используется как прототип и эталон).

tailgunner ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

>Назовешь мне пару-тройку некомпилируемых скриптовых языков?

Tcl. в некотором обобщении - Prolog. насчёт Lua не знаю, но подозреваю что там тоже интерпретация на уровне исходного кода должна быть

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

> Назовешь мне пару-тройку некомпилируемых скриптовых языков?

Скомпилируй мне код на Perl в отдельный ELF-файл.

AITap ★★★★★ ()

Re: [programming] Скриптовые языки

> Внимание, вопрос: Какую функциональность приложения (теперь абстрактного) лучше разрабатывать на скриптовых языках программирования, чем компилируемых?

Можно предположить, что ту, для которой нужно обеспечить гибкость настройки (например для исправления баланса в игре) - исправить скрипт, не перекомпилируя приложение.

Byron ()
Ответ на: Re: [programming] Скриптовые языки от AITap

Re: [programming] Скриптовые языки

>Скомпилируй мне код на Perl в отдельный ELF-файл.

а что, кто-то говорил о компиляции в машкод?

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

>> Назовешь мне пару-тройку некомпилируемых скриптовых языков?

> Tcl

Это не так для версий 8.x

> Lua

Тоже нет.

Остаётся Ruby и...? Что ещё, кроме шеллов, подсказывайте знатоки.

Hjorn ()
Ответ на: Re: [programming] Скриптовые языки от Hjorn

Re: [programming] Скриптовые языки

>Это не так для версий 8.x

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

>Тоже нет.

да, там я уже заметил CLR и JVM-реализации

jtootf ★★★★★ ()

Re: [programming] Скриптовые языки

База, которую нельзя изменять простым юзерам, - на С, а та часть, которая часто изменяется - на скриптовых. Типа, как макроязык в РПГ нужен для модописателей, которых в С пускать нельзя.

abraziv_whiskey ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

> это так даже в 8.5, с поправкой на многочисленные оптимизации процесса.

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

Hjorn ()
Ответ на: Re: [programming] Скриптовые языки от Hjorn

Re: [programming] Скриптовые языки

>уже не тот чистый интерпретатор, каким были старые реализации тикля

факт. но компилятор из него ещё более грязный, чем интерпретатор :)

>Такая компиляция конечно совсем не то, что обычно ожидают от "компилируемого языка"

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

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

>А он разве скриптовый? :)

ну не компилируемый точно - за исключением чудо-диалекта Turbo Prolog

>Ну и машина Уоррена опять же.

это канал о сферических конях в вакууме?

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

>>А он разве скриптовый? :)

>ну не компилируемый точно

Мы вроде выяснили, что большинство скриптовых языков компилируются :)

> за исключением чудо-диалекта Turbo Prolog

И того самого эдинбургского Пролога Уоррена. И GNU Prolog. И SWI Prolog. И наверняка кучи других Прологов %)

>>Ну и машина Уоррена опять же.

> это канал о сферических конях в вакууме?

ДА!!!111

tailgunner ★★★★★ ()

Re: [programming] Скриптовые языки

Кстати, вспоминается старый конфигосрач в новостях и конфиг от нгинкса, который тоже скриптовый. Быть может, скрипты - это такие настройки приложения, которые, как известно, должны задаваться на этапе компиляции? :)

EmStudio ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

>И того самого эдинбургского Пролога Уоррена. И GNU Prolog. И SWI Prolog. И наверняка кучи других Прологов %)

не хочу тебя расстраивать, но ты несколько ошибаешься

>Мы вроде выяснили, что большинство скриптовых языков компилируются :)

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

>ДА!!!111

а вы говорите - ЛОР не торт :) что-то неизменное тут всё-таки есть

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

>>И того самого эдинбургского Пролога Уоррена. И GNU Prolog. И SWI Prolog. И наверняка кучи других Прологов %)

> не хочу тебя расстраивать, но ты несколько ошибаешься

Да ладно, не жалей меня. Сейчас еще раз посмотрел в гугле - таки GNU Prolog и в байткод, и в машкод компилируется, а про SWI Prolog написано просто "компиляция".

>>Мы вроде выяснили, что большинство скриптовых языков компилируются :)

>предлагаю существенной разницей считать изменяемость скомпилированного кода в процессе выполнения

По-моему, для ТС существенной разницей был VM или нативный код.

tailgunner ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

>По-моему, для ТС существенной разницей был VM или нативный код.

ну тогда он неверные термины выбрал

>таки GNU Prolog и в байткод, и в машкод компилируется, а про SWI Prolog написано просто "компиляция"

а теперь закрываем педивикию, пишем какое-нибудь приложение на Prolog'е (хоть GNU, хоть SWI), и смотрим - насколько это можно считать компиляцией. как и в случае Tcl я не считаю этот термин тут хоть сколько-нибудь подходящим

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

>> По-моему, для ТС существенной разницей был VM или нативный код.

> ну тогда он неверные термины выбрал

О чем и речь.

> пишем какое-нибудь приложение на Prolog'е (хоть GNU, хоть SWI), и смотрим

Эх, не сыпь мне соль на сахар :/

tailgunner ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от tailgunner

Re: [programming] Скриптовые языки

в кои-то веки спор на ЛОРе закончился согласием o_O причём параллельно в двух ветках в Talks (и оба раза - на технические темы). ад какой

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от kost-bebix

Re: [programming] Скриптовые языки

Дурная затея. Как показывает практика такое обычно выливается в эпопею с профилированием и непониманием почему все и везде тормозит, а потом по переписыванию 90% кода на С++. Оставшиеся 10% на скриптовых языках в виде "клея".

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

Reset ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от Reset

Re: [programming] Скриптовые языки

> Как показывает практика такое обычно выливается в эпопею с профилированием и непониманием почему все и везде тормозит

Практика еще и показывает, что таким способом получаются и вполне быстрые программы (тот же mercurial).

tailgunner ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от jtootf

Re: [programming] Скриптовые языки

> в кои-то веки спор на ЛОРе закончился согласием o_O причём параллельно в двух ветках в Talks

ЛОР уже не торт (я всегда хотел это сказать!!11)

tailgunner ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от Reset

Re: [programming] Скриптовые языки

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

именно

jtootf ★★★★★ ()
Ответ на: Re: [programming] Скриптовые языки от Reset

Re: [programming] Скриптовые языки

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

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