Программирование на bash.

Jul 06, 2016 18:53

Это ужасное днище.

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

не люблю, скриптовые языки

Leave a comment

eigen July 6 2016, 17:38:19 UTC
Скриптовые задачи он выполняет. Правда питон лучше для этих целей )

Reply

thesz July 7 2016, 09:48:30 UTC
То, что что-то есть лучше баша для заявленных целей существования баша, означает, что баш нехорош. ;)

Reply

Re: eigen July 7 2016, 11:29:47 UTC
Простите, но сколько лет башу. Тогда никами питонами и, прости господи, хаскелями и не пахло. А вот ещё простой sh попробуйте, или ещё круче zsh, дефолтный shell в AIX.

Reply

RE: Re: eigen July 7 2016, 11:56:01 UTC
Возможно. Но кто о нём знал/знает, всё только в последние годы. И сравните число людей пользующихся bash'ем (пишущих скрипты на нём) и пишущих на "хаскеле".

Reply

Re: Re: thesz July 7 2016, 12:43:04 UTC
Я не понимаю, о чём вы.

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

Reply

RE: eigen July 7 2016, 12:44:53 UTC
Нет, я не об этом.

Reply

RE: Re: Re: deadzay4ik July 7 2016, 19:59:26 UTC
О зачетноя фраза.

Reply

RE: Re: ext_709052 July 14 2016, 10:01:06 UTC
Не защищая bash, но все же история с Хаскелем не так однозначна. Комментарии с ссылками у вас не показываются, поэтому просто скажу, что в Инете есть PDF-а под названием "A History of Haskell: Being Lazy With Class" за авторством Paul Hudak, John Hughes, Simon Peyton Jones и Philip Wadler (от 2007-го года). Из нее получается, что с 1987-го по 1990-й язык Хаскел существовал "на бумаге". А первые его компиляторы стали появляться в 1990 и 1991-ом годах. Ну и насколько они были пригодны к практическому использованию еще вопрос.

Тогда как bash появился сразу как пригодный к повседневному использованию инструмент.

Ну и с bash-ом вопрос не столько в том, "как на этом можно программировать", сколько в том "а зачем на этом программировать". Для простых скриптов в 10 строк возможностей bash-а вполне хватает, тем паче, что эти возможности есть практически везде. Если же нужно больше, то почему народ продолжает писать на bash-а, а не использует Ruby, Python, Perl или Tcl -- вот это самый интересный вопрос.

Reply

Re: Re: thesz July 14 2016, 15:28:44 UTC
Согласен.

(правда, рядом с Хаскелем была Миранда и МЛ - тоже неплохие варианты)

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

Короче говоря, если бы я выбрал тикль, а не баш, меня бы прибили. Ну, или уволили. ;)

Reply

RE: Re: potan July 25 2016, 12:55:51 UTC
bash везде есть. А часто даже популярный питон на виртуальные машины приходится устанавливать. При том, что я лично предпочту bash питону.
Кроме того, декомпозиция задачи на конвеерную передачу данных элегантно решается кроме *sh, пожалуй только в Haskell, Prolog и PowerShell. А она достаточно типична для скриптов.

Reply

Re: Re: thesz July 25 2016, 14:03:30 UTC
Конвейер переоценён.

Графы без циклов наше всё (см. gstreamer).

Reply

RE: Re: Re: rdia July 25 2016, 15:14:26 UTC
Это единственный реализованный способ внести ленивость в командную строку. И тут можно про неё не задумываться, пока не потребовалось найти пару телефонов в гигабайтах данных на ноутбуке с 3ГБ памяти.

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

программа:: (arg :: [[Char]], stdin :: [Char]) -> (stdout :: [Char], stderr :: [Char])
| :: программа -> программа -> программа

(я правильно типы написал?)

Reply

RE: Re: Re: thesz July 25 2016, 16:28:09 UTC
В принципе, правильно ( ... )

Reply

anonim_legion July 7 2016, 19:59:37 UTC
Баш писали одмины. Они не умели писать парсеры. Поставишь пробел не там - ой, всё сломалось.

Reply


Leave a comment

Up