что делает скрипт - скриптом?
От: pira  
Дата: 20.12.16 19:25
Оценка: +1
Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?
Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.
Re: что делает скрипт - скриптом?
От: IID Россия  
Дата: 20.12.16 19:32
Оценка: 1 (1) +2
Здравствуйте, pira, Вы писали:

P>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?


Компилируемость (в байткод) не важна. Очень многие языки это и так делают (неявно).
ИМХО основное (историческое?) отличие — это возможность исполняться нативно. Результат JIT-а в исполняемый файл это уже не скрипт.

P>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.


хаскелл тут непричём, это shebang, фича командного интерпретатора (и да — ты перепутал символы в shebang).
kalsarikännit
Re[2]: что делает скрипт - скриптом?
От: Sinix  
Дата: 20.12.16 19:52
Оценка: 1 (1) +3
Здравствуйте, IID, Вы писали:

IID>Компилируемость (в байткод) не важна. Очень многие языки это и так делают (неявно).

IID>ИМХО основное (историческое?) отличие — это возможность исполняться нативно. Результат JIT-а в исполняемый файл это уже не скрипт.

А тут как сову натягивать. Основной критерий, кмк, это возможность поправить исходный код на ходу.
Всё остальное — это уже вопрос терминологии. Скажем, sfx архив с интерпретатором и скриптом внутри вполне реально выдать за пакет с скриптами. Добавим сфероконины: возьмём любой софт, который хранит скрипт в ресурсах / базе / отдельных файлах и имеет встроенный редактор скриптов. Ну да, он тоже скриптуемый, даже если эти скрипты в фоне в натив перегоняются.
Re: что делает скрипт - скриптом?
От: Sharov Россия  
Дата: 20.12.16 20:07
Оценка:
Здравствуйте, pira, Вы писали:

P>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

Простота линковки -- иначе, как уже сказано выше, не надо перекомпилировать.
Кодом людям нужно помогать!
Re: что делает скрипт - скриптом?
От: push  
Дата: 20.12.16 21:15
Оценка: 2 (2) +4 :))
Серьезно? Это не вброс?

Боже, ну и дела.
Ладно, экскурс для самых зелёных:
На заре первых диких программных комплексов человек часто предпринимал попытки их одомашнить. В итоге эволюции и труда многих программистов создавались командные оболочки. Первые программисты были очень трудолюбивы, но генетика, бессердечная сволочь, всё же делала своё дело — то там то сям добавляя крупицу лени. Как ни прискорбно, в итоге появился очень ленивый программист, которому лень было столько трудиться. И вот закралась ему крамольная мысль — а почему бы не переложить всю эту работу на компьютер? К тому моменту совесть по отношению к компьютеру уже была рудиментом у большинства его вида, что и позволило нашему программисту воплотить свои идеи в виде расширений возможностей для командной оболочки. Дальнейшие годы эволюции оформили эти расширения в интерпретируемый язык сценариев, которые в простонародье стали называть скриптами.
Так, что исторически в сленге программистов скрипт — это то, что интерпретируется.
То, что сейчас идёт судорожное броуновское движение динамики в статику, статики в динамику, интерпретируемого в компилируемое, компилируемое в интерпретируемое — это всё "мартышкин труд" и починёт на полях всех остальных "гениальных" идей. Тема не стоит топика.
Re[3]: что делает скрипт - скриптом?
От: pira  
Дата: 21.12.16 04:31
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, IID, Вы писали:


IID>>Компилируемость (в байткод) не важна. Очень многие языки это и так делают (неявно).

IID>>ИМХО основное (историческое?) отличие — это возможность исполняться нативно. Результат JIT-а в исполняемый файл это уже не скрипт.

S>А тут как сову натягивать. Основной критерий, кмк, это возможность поправить исходный код на ходу.


что значит на ходу? если я запустил питоновский скрипт и потом сделал изменения -- они в этом работающем скрипте не будут видны.
Re[2]: что делает скрипт - скриптом?
От: pira  
Дата: 21.12.16 04:39
Оценка:
Здравствуйте, IID, Вы писали:

IID>Здравствуйте, pira, Вы писали:


P>>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?


IID>Компилируемость (в байткод) не важна. Очень многие языки это и так делают (неявно).

IID>ИМХО основное (историческое?) отличие — это возможность исполняться нативно. Результат JIT-а в исполняемый файл это уже не скрипт.

а почему тогда скрипты на Lua называют скриптами?


P>>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.


IID>хаскелл тут непричём, это shebang, фича командного интерпретатора (и да — ты перепутал символы в shebang).


ну и фиг с ним. а ты перепутал perl с perl 6.
Re[2]: что делает скрипт - скриптом?
От: pira  
Дата: 21.12.16 04:47
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, pira, Вы писали:


P>>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

S>Простота линковки -- иначе, как уже сказано выше, не надо перекомпилировать.


ну вот возьмем хаскел:
#!/usr/bin/env stack
--stack runghc --resolver nightly-2016-12-04

-- тут прога идет
main = putStrLn "hellllo"


это скрипт на хаскелле. а ты точно знаешь, что stack не компилирирует этот код за кулисами в нативную прожку, а потом при запуске в терминале, выдает результат?
также, я могу сюда еще подключить разные внешние библиотеки. тут -- простота линковки?
Re[4]: что делает скрипт - скриптом?
От: Sinix  
Дата: 21.12.16 05:21
Оценка:
Здравствуйте, pira, Вы писали:

P>что значит на ходу? если я запустил питоновский скрипт и потом сделал изменения -- они в этом работающем скрипте не будут видны.

Как насчёт "в уже доставленном клиенту продукте"?
Re: Приблизительно так
От: Sheridan Россия  
Дата: 21.12.16 05:28
Оценка: +4
Здравствуйте, pira, Вы писали:

P>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

Можно к вопросу подойти с другой стороны.
Скрипт это то, что написано для автоматизации того, что можно сделать вручную, затратив много времени. Нопример, переименовать кучу файлов или потрогать за ssh сервера с целью нопример сбора статистики.
"Программа" (сервис, АРМ, етц) же делает больше и часто комплексно (ну то бишь тот же CMS — там и зарегистрировацца можно и пост написать и коммент и оформить и кортинку вставить). Одним из критериев отличия я бы назвал возможность взаимодействия с пользователем (сервисы конечно не попадают под этот критерий).
Ну вот как то так.
Если кратко, то скрипт — "лучше я потрачу два часа на написание кода, который делает работу за пять минут, на которую у меня уйдет пятнадцать", а "программы" — всё остальное.
Matrix has you...
Re[2]: Приблизительно так
От: pira  
Дата: 21.12.16 06:11
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Скрипт это то, что написано для автоматизации того, что можно сделать вручную, затратив много времени. Нопример, переименовать кучу файлов или потрогать за ssh сервера с целью нопример сбора статистики.

S>"Программа" (сервис, АРМ, етц) же делает больше и часто комплексно (ну то бишь тот же CMS — там и зарегистрировацца можно и пост написать и коммент и оформить и кортинку вставить). Одним из критериев отличия я бы назвал возможность взаимодействия с пользователем (сервисы конечно не попадают под этот критерий).

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


S>Если кратко, то скрипт — "лучше я потрачу два часа на написание кода, который делает работу за пять минут, на которую у меня уйдет пятнадцать", а "программы" — всё остальное.


возьму любую программу и получишь то же самое определение.
Re[5]: что делает скрипт - скриптом?
От: pira  
Дата: 21.12.16 06:20
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, pira, Вы писали:


P>>что значит на ходу? если я запустил питоновский скрипт и потом сделал изменения -- они в этом работающем скрипте не будут видны.

S>Как насчёт "в уже доставленном клиенту продукте"?

ну так передай клиенту прожку на С с исходниками, которую он сможет компилить с помощью make файла и запускать. и питоновский скрипт. и там, и там можно исправлять на ходу и все это сделать одной коммандой.
обе эти прожки -- на С и питоне -- будут скриптами?
Re[6]: что делает скрипт - скриптом?
От: Sinix  
Дата: 21.12.16 06:29
Оценка:
Здравствуйте, pira, Вы писали:

P>ну так передай клиенту прожку на С с исходниками, которую он сможет компилить с помощью make файла и запускать. и питоновский скрипт. и там, и там можно исправлять на ходу и все это сделать одной коммандой.

P>обе эти прожки -- на С и питоне -- будут скриптами?

Я ж говорю — тут как сову натягивать.
ChaiScript, CS-Script, typescript, который вообще компилируется с проверкой типов, JS, который браузером JITтится в натив — что из этого не скрипт?
Re: что делает скрипт - скриптом?
От: Dym On Россия  
Дата: 21.12.16 07:30
Оценка:
P>Интересно, что делает скрипт — скриптом?
Как уже написали выше — лень:

- Ой, а что это у вас тут за «костыль» торчит?
— Да это же скрипт, не обращайте внимание!

И всё, вопросов нет, это ж скрипт, какие могут быть претензии.
Счастье — это Glück!
Re: что делает скрипт - скриптом?
От: v6  
Дата: 21.12.16 08:19
Оценка: +3
Здравствуйте, pira, Вы писали:

P>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

Если после написания текста программы ты можешь выполнить ее, используя только сам файл с исходным кодом и минуя явные шаги создания дополнительных сущностей (скомпилированной программы) — то это скрипт. Как оно под капотом все устроено, как и во что компилируется — неважно.
Re[2]: Приблизительно так
От: TimurSPB Интернет  
Дата: 21.12.16 08:50
Оценка: 1 (1) +1
S>Если кратко, то скрипт — "лучше я потрачу два часа на написание кода, который делает работу за пять минут, на которую у меня уйдет пятнадцать", а "программы" — всё остальное.
+Скрипт ещё не имеет собственного состояния. Чисто вход-выход. Программа же часто имеет состояния, сохраняемые между запусками
Make flame.politics Great Again!
Re[2]: что делает скрипт - скриптом?
От: pira  
Дата: 21.12.16 09:05
Оценка:
Здравствуйте, v6, Вы писали:

v6>Здравствуйте, pira, Вы писали:


P>>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

v6>Если после написания текста программы ты можешь выполнить ее, используя только сам файл с исходным кодом и минуя явные шаги создания дополнительных сущностей (скомпилированной программы) — то это скрипт. Как оно под капотом все устроено, как и во что компилируется — неважно.


ну так я могу скомпилировать прожку на С таким образом, что будет иллюзия, что она так и исполняется. в одном случае это будет python my_app.py, в другом compile_my_c_app.sh my_app.c
разница-то?
Re[3]: что делает скрипт - скриптом?
От: GarryIV  
Дата: 21.12.16 09:27
Оценка: +1
Здравствуйте, pira, Вы писали:

v6>>Если после написания текста программы ты можешь выполнить ее, используя только сам файл с исходным кодом и минуя явные шаги создания дополнительных сущностей (скомпилированной программы) — то это скрипт. Как оно под капотом все устроено, как и во что компилируется — неважно.


P>ну так я могу скомпилировать прожку на С таким образом, что будет иллюзия, что она так и исполняется. в одном случае это будет python my_app.py, в другом compile_my_c_app.sh my_app.c

P>разница-то?

Ну будет скрипт на C, в чем проблемы? Другое дело, что так никто не делает потому что неудобно.
WBR, Igor Evgrafov
Re: что делает скрипт - скриптом?
От: Васисуалий Пупкиндт Россия  
Дата: 21.12.16 09:29
Оценка: +2
Здравствуйте, pira, Вы писали:

P>Вот есть питоновский скрипт, скрипт на руби, на баше... Интересно, что делает скрипт — скриптом? Язык? Или то, что он компилируется? Или то, что он одноразовый и небольшой?

P>Например, на хаскелле тоже можно писать как-бы скрипты -- один файл, с директивой !#/bin/env stack -- чем не скрипт.

Script это по основному значению сценарий. Поэтому этим термином логично называть текст программы в human readable форме. Т.е. к примеру сишный код в файлах это скрипт, а в скомпилированном виде уже бинарник. По сути тоже скрипт, но для человеческого восприятия неподходящий.
▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬
Мы — то, во что верим.
Re[3]: что делает скрипт - скриптом?
От: IID Россия  
Дата: 21.12.16 09:33
Оценка:
Здравствуйте, pira, Вы писали:

P>а почему тогда скрипты на Lua называют скриптами?


А почему нет ?

P>ну и фиг с ним. а ты перепутал perl с perl 6.


Я ничего не перепутал
kalsarikännit
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.