с 10 класса изучал с++ и вообще не понимаю, почему во всех современных языках нет неизменяемых объектов. даже в таких серьезных и старых языках, как джава. вот в с++ было круто, там даже можно было делать специальные константные методы для класса, которые работали с константными объектами. почему больше нигде, кроме раста ничего подобного нет? как вы пишете на джаве или на го без неизменяемых объектов? не понимаю, объясните.
upd. конечно же, я имею в виду неизменяемые объекты пользовательских классов, либо неизменяемые списки, словари
Нажмите, чтобы раскрыть...
В любой функциональщине(haskell, erlang, scala и т.д.) иммутабельность есть важнейшая составляющая. Да, их используют, и да, на них работают. Хочешь иммутабельную жабу -- учи clojure, там тебе и лексическая область видимости, и много чего ещё.
Во всём остальном, включая плюсы, оно на уровне костылей. rust в свою очередь создаётся в довольно академической среде, и поэтому там есть много такого, чего нет в других императивных языках.