кстати про STM: я так понимаю это та самая фича фп в многопоточности которая должна стрелять фразами по типу "у нас нет вот этой всей дичи с синхронизацией, блокировками, и тд.тп. так как у нас STM", верно? Я это расцениваю как преимущество, но я не понимаю почему оно не популярно. В то же время я смотрю на скалу и вижу что у нее STM нет и когда в ней работают с многопоточностью и mutable данными, она превращается в Java и использует все ее фичи в виде синхронизированных блоков, волатильности и вот этого всего.. И мне не понятно, почему от такой вещи как STM скала в итоге не редко работает с мутабельными данными и по сути в многопоточности избрала путь Java. Почему не STM, что с ним не так?