Есть три концепции, данные, время и логика. В классических ооп языка это все намешено на уровне одного класса. В эрланге/эликсире разделено. Данные в иммутабельных структурах, логика в модулях, а временные концепции через акторы. Вот в этом важное отличие, отделяем мухи от котлет, получаем более понятные код. В принципе никто не мешает на той же джаве так писать, но никто так делать не будет, потому-что базовые библиотеки делают по другому, ну и люди не привыкли. А в эликсире тупо это сложно сделать, потому-что уже все заточено под раздельный подход. Но тут на помощь могут прийти макросы и "класссическое" ООП можно затащить в элексир через них.
Откуда информация, что никто так делать не будет и к чему там привыкли? Данные в датаклассы или кейсклассы лет 10 кладут
Логику в классы, которые имплементируют интерфейсы кладут