J>То есть сначала сделаем readonly ref потому что не хотим копировать большие структуры, а потом делаем копию структуры на каждый вызов метода. Ну если уж взяли из плюсов константные ссылки, то и константные методы тоже берите.
Чем больше они делают разных readonly тем сильнее впечатление что ни у кого из авторов нет бэкграунда в C++, зато есть в JavaScript, VB и прочих питонах

Лучше бы начали с const методов, пусть даже самым тупым способом — поддержав аттрибут типа решарперовского [Pure]