Хаскель, 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 05:45 pm (UTC)Питон не просто дает писать плохз. Perl тоже дает писать плохо. Тем не менее средний модуль на CPAN обычно куда более грамотный, чтем средний модууль на pypi.
Насчетт скорости разработки не соглашусь актегорическаи. У него скорость разработки примерно как у С или java.
ОПять же с тестами все плохо - есть целыых два примерн равномощных фреймворка, unittest и pytest ми оба хуже.
no subject
Date: 2025-02-25 06:01 pm (UTC)Нужны структуры данных - так возьмите плюсы с STL, никто не заставляет использовать Boost. Библиотеки для JSON есть. Для HTTP(S) можно на curl завязаться.
Но не берете. Значит, все-таки что-то тут такое у питона есть.
no subject
Date: 2025-02-25 06:45 pm (UTC)curl это очень хитрый предмет. Я и из шелла стараюсь его не использовать. Хотя интерфейс там погибче чем у wget. Дело в том, что там стремились поддержать столько протоколов сколько получится, и натащили с проект дырявых by design бибилотек, вроед libssh2.
Спасает только то, что во всех дистрбибутивха curl из коробеки, так что дыры в нем не моя проблема, а проблеыаы авторов дестрибтвивов (но это пока я его не использую, а поставляю софт, его использующий. Начну использовать - будет моя).