I think it's a good idea to respect this: On Mon, 24 May 2021 09:54:01 +0200, Nicholas Clark <nick@ccl4.org> wrote: > Thanks for thinking this through, and writing a clear explanation. >So, "removing sigils" has been discussed and is not feasible >It is not happening. No more mails about it. >Nicholas Clark -- With regards, Christian Walde On Sun, 04 Jul 2021 19:17:39 +0200, Philip R Brenan <philiprbrenan@gmail.com> wrote: > no sigils; > x = (0, 0); > y = 1; > z = (x, y); # z is (0, 0, 1) > >> Your sigil free version is much easier to understand! > > >> On Sun, Jul 4, 2021 at 2:23 PM John Ankarström <john@ankarstrom.se> wrote: >> Den 2021-05-23 kl. 21:33 skrev L A Walsh: >>> 2) Going 'unnecessary-sigil' optional. >> >> You've clearly put some thought into this, and there's nothing on face >> value that I would regard as impossible in your proposal. >> >> That said, I don't see it ever being enabled by default in any version >> of Perl for a couple of reasons: >> >> 1. It feels "unperlish". >> >> 2. It seems to admit that sigils were a bad idea from the beginning. >> I don't think everyone agrees about that. I don't think I personally do. >> >> 3. Many parts of Perl have been designed with the assumption that >> variables have sigils. For example, let's assume that Perl never had >> sigils. If that had been the case, I would doubt that lists would act >> the way they do in Perl. >> >> This >> >> x = (0, 0); >> y = 1; >> z = (x, y); # z is (0, 0, 1) >> >> just doesn't seem intuitive to me, and I suspect that it would trip up >> most people, just like the UNIX shell's word splitting does. >> >> Once you add sigils, however: >> >> @x = (0, 0); >> $y = 1; >> @z = (@x, $y); # @z is (0, 0, 1) >> >> ... the intention is much more clear and the automatic list flattening >> is no longer a foot gun; instead, it becomes a very useful feature. >> >> In summary, sigils likely make a lot of useful Perl syntax possible -- >> syntax that would be hard to remove from Perl without transforming it >> into an entirely different language.