Am 24.04.2021 um 21:51 schrieb Marco Pivetta <ocram...@gmail.com>: > On Sat, Apr 24, 2021, 21:44 Olle Härstedt <olleharst...@gmail.com > <mailto:olleharst...@gmail.com>> wrote: > >> 2021-04-24 17:59 GMT+02:00, Saif Eddin Gmati <azj...@void.tn>: >>>> Doesn't this violate the principle: It should be possible to add new >>>> features without touching old code? >>> >>> This depends on which syntax is picked, both `for` and attribute syntax >> will >>> be completely BC. >> >> I'm not talking about BC, but the maintainability of the new feature >> itself. For the shape example, you'd need to edit the original file >> for each new shape you add, which is detrimental for maintainability >> and scalability. So what's a good use-case?
I'm with Olle here: This sounds like an anti-pattern to me. The example could not be worse: Why should I not be allowed to add a hexagon shape? > The main use-case of sealed types is being able to declare total functions > around them. Could you elaborate on what's the real-world use-case for your main use-case? This sounds like another case of a feature based in (math) theory which leads to artificially locked down code. - Chris