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