Size: a a a

Scala User Group

2021 July 07

AS

Artem Sokolov in Scala User Group
ну да, функция с конфигом)
источник

AS

Artem Sokolov in Scala User Group
или сервис в архитектуре типа спринга
источник

AS

Artem Sokolov in Scala User Group
я немного подредактировал исходный пост
источник

AS

Artem Sokolov in Scala User Group
там не базовые настройки а исходные конфигурационные
источник

T

Tim in Scala User Group
под такое подходит даже Main класс, ну или вообще любой код
источник

EK

Evgenii Kuznetcov in Scala User Group
Я согласен с таким определением в узком контексте веб компонентов.

Моя изначальная позиция была не использовать слово statefull/stateless в более широком контексте (акторы, классы, структуры данных). Все еще на ней стою
источник

AS

Artem Sokolov in Scala User Group
хорошо
источник

AS

Artem Sokolov in Scala User Group
как тогда называть не RT компоненту которую можно пересоздавать без потери информации/корректности и как ту которую нельзя если не прикрутить к ней персистенс?
источник

T

Tim in Scala User Group
а если это просто код, зачем это называть "компонентой"? в рантайме их не будет больше одного инстанса же? (если не использовать thread unsafe структуры данных)
источник

EK

Evgenii Kuznetcov in Scala User Group
Не знаю. Непонятно, что такое "перезапустить" в широком контексте. Для просто структуры данных это бессмысленно.
Для акторов - возможно имеет. Но, как видно, для акторов такая терминология вызывает большое вопросов,  чем дает ответов.
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
термин ссылочной прозрачности нельзя применять к какой-то произвольной штуке, он же про код, экспрешны там
источник

AS

Artem Sokolov in Scala User Group
это понятно, только я не теорему доказываю
источник

AS

Artem Sokolov in Scala User Group
если что-то вызывает сомнения - можно обсудить
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ну тада это бесполезное чесание языками
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
последние сообщений 200
источник

AS

Artem Sokolov in Scala User Group
ну типа вот есть класс. это структура данных?
если там есть мутируемое поле, которое влияет на его работу так что потеря информации из него делает работу объекта данного класса некорректной в "исполняемом контексте (вызов, приложение, ИС)" - я бы назвал это стейтфул
источник

AS

Artem Sokolov in Scala User Group
дык для этого тг чаты и нужны
источник

T

Tim in Scala User Group
актор это не универсальная модель для асинхронных операций

актор это замена транзакциям - граница стейта актора и есть по сути транзакционная граница, только внутри которой strongly consistent primary source of truth, а вокруг пурга и медведи ходят

для стейта внутри актора гарантируется доступ только одного потока в один момент, это примерный аналог лока на строку в базе
и плюс для пары sender/receiver гарантируется очерёдность событий - это звучит скучно, но это очень важно для целостности
источник

EK

Evgenii Kuznetcov in Scala User Group
Если поле неизменяемое по ссылке, а объект за ним мутабельный? Что такое информация? Что такое потеря? Аккуратные ответы на эти вопросы ведут к понятию РТ
источник

AS

Artem Sokolov in Scala User Group
да опять РТ, хоспади
источник