No, not a single glyph. Just a straightforward use of do BLOCK where it's not currently allowed. | [reply] |
But then you have a bare arrow on the left. Let me see, you have a situation like:
$foo -> THINGIE
where THINGIE happens to be do BLOCK.
With current syntax THINGIE can be:
- a sub, array or hash dereferencing: (...), [...] and {...} respectively;
- a bareword, interpreted like a method, with or without a pair of parens to pass parameters, if any: the latter, if present conveys a strong psychological feeling of being linked with the method itself as if they were a single thing;
- a simple scalar value, to be interpreted as a symref
(if not under strict) or a subref to be called like a method.
All these thingies are "boxed", while yours look like the juxtaposition of two other thingies, with no surrounding box. It simply doesn't fit well, and is aesthetically unappealing.
Granted, ->${\EXPR} looks awful, but it is an awful use of the existing syntax, which does not permit a more beautiful form. Your proposal makes for ugly syntax to start with: in all earnestness, looking at it from a distance it looks cleaner. But as you close up, you get an unsatisfactory feeling. Of course I would like to say that I have a much more beautiful proposal of my own, but no, I can't devise any...
Update: striked out text above thanks to a /msg by ysth - "a simple scalar can always be a coderef or a method name (either qualified or not); the latter is unaffected by strict". | [reply] [d/l] [select] |