> В шелле есть другая, гораздо более значимая проблема:Не-а. То есть совсем мимо кассы.
> программирование на нём подразумевает использование внешних программ,
Да, поскольку glue language.
> ибо он сам ничего не умеет
Неправда, на чистом шелле можно сделать достаточно много -- почитайте исходники http://altlinux.org/libshell или http://www.altlinux.org/control и удивитесь.
> а внешние программы могут быть написаны так, как вздумается - без возможности
> разобрать вывод регекспами, без богатого набора возвращаемых ошибок,
> без философии "маленькие, но острые", или программа принципиально не командо-строчная
И часто Вы лично встречаете mc или там screengrab в *скриптах*?
Логическая беда этой ошибки аналогична MS-овскому лозунгу про "функциональность": мне нет дела до непригодных к скриптованию программ, когда я пишу скрипт. Потому что на практике весь софт, который есть смысл в нём применять -- уже в курсе, что такое pipe и как в нём жить.
> и над ней принципиально ничего на шелле не написать - всякие псевдографические
> интерфейсы там.
Вам сюда: http://stackoverflow.com/questions/928019/how-to-make-a-gui-... (можно предложить и другие примеры, просто это "над ней" немножко лишено смысла, по крайней мере не удалось обнаружить).
> А библиотеки скриптового языка, по крайней мере, всегда можно использовать для
> программирования.
Хм, а для чего они ещё предназначены, кроме как для использования в собственно программах? :)
PS: если что, я обычно как только данные становятся сложнее шелла и потоком не разобрать -- беру ruby и его применяю опять же как glue language, просто с хэшами и прочими радостями в комплекте. Фрагменты одного такого ужастика на скору руку можно найти здесь: http://forums.epo.org/open-patent-services-and-publication-s... (на тот момент ничего майнстримного рубишного для работы с WSDL 2.0 не было, а байндинги к сторонней сишной реализации не выглядели как более короткий путь).