Хаскель, OCAML или что?
Feb. 25th, 2025 01:36 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Что-то очень много накопилось претензий к питону как к языку для более крупных проектов чем осмысленно писать на шелловских скриптах.
Вот на что бы такое перейти?
Чтобы оно было действительно высокоуровневое, не rust и не go.
По хорошему счету бы чтобы оно было не менее высокоуровневым чем традиционный shell.
Основные задачи - это управление кучей внешних командно-сторочных утилит, вклчюая парсинг их вывода, прогулки по файловым иерархиям и немножко всего того же самого не из командной строке, по http.
При этом хочется типизированности и компилируемости.
Переносимость в общем не шибко нужна. Debian stable (в смысле уже trixie к тому времени как соберусь что-то внеднять). На эльбрусах, пожалуй, шеллом обойдутсь, так что компилируемость вне основного набора платформ (x86_64, arm64, s390x, riscv64) не принципиальна.
X-Post to LJ
no subject
Date: 2025-02-25 06:50 pm (UTC)На мой взгляд, верхний размер проекта на shell (хотя я обычно старнаюсь писакть скрипты не на bash, а на posix shel) это около 500 строк. Ну с shellcheck-ом можжет быть можно 750. А если гнадо большле, то надо уже что-то другое брать. Сильно динамичепская природа шелла начинает выходить боком в проектах такого размера.
А с awk история такая ятчо есть nawk, mawk, gawk и еще чертова уйаа диалектов. Причем в отличие от версий компилятора C они все есть в одном дистрибутиве, и который из них сегодня на данной машине представеляет собой просто awk - совершенно непредсказуемо. Вот напишешь в скриепте gsub, ав он попытается выполиться на мшаине. где установлен awk, в котором этой функции нет.