Какой язык выбрать для «системного» программирования?
Для написания приложений в Linux на уровне плотного взаимодействия с системой широко используются несколько языков из числа названных (Python, Perl, Go, C++).
Но!
Вы
никогда не будете знать и понимать систему Linux (и любую UNIX-like) без достаточно обстоятельно знания языка C:
- все библиотеки Linux (POSIX) формулируются в терминах языка C;
- все системные вызовы - в формате C;
- весь код ядра, драйверы-модули могут писаться только и исключительно на C.
Поэтому без знания C (можете на нём самом и не писать) к "системному программированию" можете и не соваться ;-)