Sono curioso come fare per implementare una classe che obbedisce a regole rigorose di programmazione funzionale.
Per esempio, se ho una classe che ha due attributi e ho un metodo che li modifica, come dovrei andare a fare così? Gli attributi sarebbero vals private, e il metodo avrebbe dovuto restituire una nuova istanza dell'attributo ogni volta che lo modifica. Questo va bene, tranne che mi piacerebbe tenerlo contenuta, il che significa avrei bisogno di un modo per impostare il val.
Quale sarebbe il modo migliore per farlo in modo che non ho migliaia di istanze di esempio, una collezione, galleggianti intorno a memoria?