Dear all, Just to throw in my 2 cents as a userland developer: having multiple ways to write the same thing isnt always right, but does have advantages. (i.e. the [] shorthand is gaining alot of popularity as already noted) (and might even force array() into deprecation imho)
But it does also add clutter since a developer has to have _more_ syntax knowledge in order to read the code. In this case, chaining alot of short hand closures would require a bit of a learning curve where the function() syntax is already everywhere... Reading the functions is more self-explanatory... But anyway, with regard to the type hints and such: I saw the [draft] Callable-types RFC ( https://wiki.php.net/rfc/callable-types ) which before this discussion really sparked my interest of having types _everywhere_ (yeeeey!) and with this shorthand closure RFC the two might even get all the FP guys back into PHP ;) In anycase, Anthony, you might want to have a look at the draft RFC, since from a userland view, this seems a really good way to go. Good luck with this development people! Looking forward to whatever comes out of it! Met vriendelijke groet, Robin Speekenbrink Kingsquare BV 2015-09-01 10:44 GMT+02:00 Anthony Ferrara <ircmax...@gmail.com>: > Pavel > > On Tue, Sep 1, 2015 at 4:32 AM, Pavel Kouřil <pajou...@gmail.com> wrote: >> On Mon, Aug 31, 2015 at 9:29 PM, Bob Weinand <bobw...@hotmail.com> wrote: >>> I had this RFC in draft since some time, but delayed it due to all the >>> ongoing PHP 7 discussions. Also we have no master branch to merge features >>> in until 5.4 EOL. Thus I'm reviving this now. >>> >>> Time for the first RFC targeting PHP 7.1 (assuming PHP 8 isn't going to be >>> the next version ;-)): >>> >>> The short Closures RFC: >>> https://wiki.php.net/rfc/short_closures >>> >>> Hoping for constructive feedback, >>> Bob >>> -- >>> PHP Internals - PHP Runtime Development Mailing List >>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >> >> Hi, >> >> as a purely userland developer, I would definitely appreciate the >> shorthand function for anonymous functions; having tons of stuff like >> "function ($x) { return $x * 2; }" makes the code less readable in >> the end. >> >> I'm not sure about the "auto using" of all variables though; wouldnt >> it be possible to statically check for the used variables and only >> import what's needed, for performance reasons? > > That's precisely what's happening. Not all variables are bound, only > those that are used. Somehow somewhere in this thread the confusion > was implied that the entire scope is copied. > >> Also, how hard would it be to add type hints (only for parameters)? >> Sometimes they are needed to make the IDE know the variable type >> because it can't be guessed automatically. I know about your note in >> RFC,this is just a question to other internal members.Return type can >> be infered by IDEs from the simple expresion quite easily. >> >> PS: would "() ~> foo()" work? I think it should, but I couldn't find a >> mention about it in RFC. :) > > Typing on closures is outside the scope of this RFC. > > With that said, I'd love to hear and see examples of this. It's > something I definitely want to do, just haven't come up with a good > enough way to do it... > > Anthony > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php