Вообще тут прям проблема. С одной стороны GUI — как раз та область, где можно сильно упростить жизнь в долгосрочной перспективе, присев на иммутабельные структурки. И более того, можно даже себе позволить сплайсы те же — когда пунктов в менюшке мало, можно и посплайсить ради красоты кода, много ресурсов не потратишь.