Ок, согласен - компилируемые и интерпретируемые.Может у нас разное представление о том, что такое "компилируемые языки" и что такое "скриптовые языки"?
На мой взгляд джаваскрипт даже удобнее чем биншелл. В таком варианте, я согласен на джаву, у меня даже есть один инструмент, который реализован на связке ANT + JS + Java. Но хочу его переделать на rake.Если под скриптовыми подразумеваются языки с наличием интерпретатора, то BeanShell превращает Java в скриптовый язык.
Теперь ответ на вопрос чем же они неудобны. Вот у меня есть один инструмент написанный на джаве. Он состит из некоторого кол-ва классов (пусть 10). Чтобы его распространять для работы, всё это добро упаковано в jar и положено в некое место, где лежат всякие сторонние тулы. Сырцы в репозитории. Чтобы с этим удобно работать было - нужно IDE. Любое изменение требует запуска шага, который перепаковывает jar и еще шага, по копированию нового джара в старое место.
Теперь скрипт (на интерпретируемом языке). Документ (он же запускаемый файл) лежит в мастер-репозитории, доступном по NFS и запускается с любого компа прям оттуда. Всё. Все знают это одно постоянное место и работают с ним. Если нужно что-то поменять - Far или какой-нить joe - меняем в своем дочернем репозитории, убеждаемся, что все работает - закидываем в мастер-реозиторий (check-in) и у всех появляется новая версия естественным путем. Уходит куча ненужных шагов, а остаются шаги, которые в варианте с джавой все-равно тоже надо делать.
Теперь "сырец и документация и запускаемый файл". Если с тулом имеет дело не его автор, то могут возникнуть некоторые сложност или непонятки как с ним быть или почему не работает. И человеку нужно всего-лишь посмотреть в сам скрипт и понять, что он делает не так или где там ошибка. В конце-концов взять и сделать свой альтернативный вариант или исправить ошибку в скрипте, если есть. Ему не надо думать, а где сырцы лежат. И документацию не надо искать отдельно (она у нас есть, если честно и для скриптов тоже, но зараза устаревает постоянно).