純粋関数型でキャッシュは実装可能?

例えばOOPでは計算に時間がかかる値はキャッシュしておいて次の読み取りで
キャッシュから返すという事ができる。
このキャッシュの管理をOOPらしいカプセル化によってまともに実装できる