Naja, man könnte halt auch einfach gleich eine Klasse statt eines Records nehmen. Ich hab in einem Projekt in C# letztens auch eine Color-Klasse die einiges mehr kann als nur
RGB Werte halten gehabt, und zunächst als Struct (=Record) implementiert. Nachdem das alles irgendwie einfach lahm und stellenweise schwerfällig war (als Rückgabe eines Getters kommt dann z.B. auch eine Kopie, keine Referenz, so dass man nicht an einzelne Properties/Member zuweisen kann - z.B. in einer Liste), hab ich dann einfach mal eine Klasse draus gemacht. Fazit: Riesengewinn, auch wenn es auf den ersten Blick wie Overkill aussieht
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)