LINUX.ORG.RU

[bash] альтернативы

 


0

1

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

  • guile (1)
  • tcl (*)
  • python
  • ruby
  • ocaml (2)

(1) Или я где-то ошибаюсь, или аргументы к `execlp' нельзя подсунуть в utf-8.
(2) Наткнулся здесь.
(*) Спасибо elrprt, что напомнил.

★★

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

А почему именно так сразу? Есть же zsh, csh - на них скрипты проще писать, чем на всяких питонах...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от tn1

> haskell

`runghc' стартует за ~1 сек, немного не комильфо, и `hugs' плохо поддерживается...

Вроде не тот use-case, хотя в линке про окамль кто-то ответил, что пользуется.

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

> zsh

Скрипты?... Нечитабельно же, те же правила раскрытия подстановок ${...} — отнюдь не прозрачны.

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

Есть еще `scsh'... только бы еще стабильный порт под `guile' (и могут быть заметные задержки при старте).

n01r ★★
() автор топика

python, очевидно. Как вариант — perl. Ну и батарейки к этому, естественно.
На bash писать скрипты привычнее, но эскейпинг, сериализация/десериализация в конвеере (сферическим и в вакууме, может, плейнтекст и существует и подходит для всего, но IRL его не обнаружено)

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

> Я о ghc/ghci.

Подразумевается компиляция?

Если да, есть ли готовое решение, чтобы, скажем сохранять бинарь в ~/.cache, запускать его ежели последний актуален или обновлять в противном случае?

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

правила раскрытия подстановок ${...} — отнюдь не прозрачны

Я что-то видно проспал...в чём отличия от баша?

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

> Можно подумать, питон более читабельный...

Пробовал писать `completion-functions'... остался осадок).

man zshexpn | grep -2 brain

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

> Я что-то видно проспал...в чём отличия от баша?

Вложенность неограничена. Пролистайте правила, что под абзацом с `brain' (пост выше).

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

>Что значит фраза:«Ну и батарейки к этому, естественно»
То и значит. Крайне желательна небольшая обвязка, заточенная на выполняемые задачи.

x3al ★★★★★
()

Кстати, юзеры kes тут есть? Выглядит интересно, но я не знаю, насколько оно юзабельно для скриптов.

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

давно не писал на баш, а всё больше именно под zsh, и даже не задумывался о таких высоких материях...
Может что-нибудь исполните из своего, из последнего, из сборника «средней сложности) пользовательских скриптов»?
А мы вам подпоём, кто во что горазд

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

> Может что-нибудь исполните из своего, из последнего, из сборника «средней сложности)

Пытался перенести несложную обязку для mplayer с `zsh' на `guile/guile+scsh'... особой необходимости не было, и недоперенес, посему стесняюсь).

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

> Если да, есть ли готовое решение, чтобы, скажем сохранять бинарь в ~/.cache, запускать его ежели последний актуален или обновлять в противном случае?
make -k

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

make -k

Вы сами пользуетесь? в смысле не теоретизирование ли...

Вспомнил еще, что возможна проблема с местом на диске в случае большого количества скриптов: бинари обычно жирные, на примере xmonad-serverhook клиент был 1-2 мб.

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

> Вы сами пользуетесь?
да.

в смысле не теоретизирование ли...

Изучаю язык, использую для программирования/конфигурации WM(xmonad)

бинари обычно жирные, на примере xmonad-serverhook клиент был 1-2 мб.

нуу ... если сравнивать ghc6 и ghc7, то размер бинарей сократился в ~1.5 - 2.0 раза.(был 3.7MiB, стал 1.9MiB с одинаковым конфигом)

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

> иначе — перл/питон.

Имхо, и `guile' имеет право на жизнь. Почему в случае относительно высокоуровневой задачи нужно руководствоваться предписаниями «© 2010 Linux Foundation».

Может кому-то GNU ближе: «Guile is the GNU Ubiquitous Intelligent Language for Extensions, the official extension language for the GNU operating system». Пусть и де-факто он непопулярен.

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

>> Вы сами пользуетесь?

да.

Ок, спасибо.

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

> Имхо, и `guile' имеет право на жизнь. Почему в случае относительно высокоуровневой задачи нужно руководствоваться предписаниями «© 2010 Linux Foundation».

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

arsi ★★★★★
()

perl, все остальное от лукавого

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

>альтлинукс вот скрипты потихоньку с перла на руби перепилил

Чего только на ЛОРе не узнаешь. Хотя таки любопытно.

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

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

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

>они пытались на баше все переписать

Суровые ребята.

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


Ну, если их изменять не надо, то таки незачем. А так, вообще неплохо бы что б на каком-то одном было, но это так, мечты :)

Deleted
()

Ruby. Удобнее питона, а скорость для пользовательских скриптов обычно не критична.

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

> в своей песочнице можешь куличики хоть в виде мпх лепить

Больше брутальности: может, плюсанут.

«© 2010 Linux Foundation»

Столлмана на вас нет...

n01r ★★
() автор топика
Ответ на: комментарий от no-such-file

> /0

#!/usr/bin/ocamlrun ocaml — на удивление быстро запускается. Между прочим ниже приводили в пример `haskell', который и тяжелее и вряд ли проще.

perl

Хм... а вдруг у меня когнитивный диссонанс из-за отсутсвия BNF? (лиспу и тиклю еще простительно).

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

> ниже приводили в пример `haskell', который и тяжелее и вряд ли проще

Это просто юмор такой.

Хм... а вдруг у меня когнитивный диссонанс из-за отсутсвия BNF? (лиспу и тиклю еще простительно).

Вам шашечки, или ехать?

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

> Вам шашечки, или ехать?

В том-то и дело, что рядом полно с шашечками (и с техосмотром)... и уже ~полтора десятка лет.

n01r ★★
() автор топика

Скрипты должны быть читабельными настолько, насколько это вообще возможно. Все остальное вторично.

fagot ★★★★★
()

олдфаги рекомендуют perl, но так как я его не знаю, то его советовать не буду

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