Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-29 Thread Larry Garfield
On Tue, Jul 22, 2025, at 3:02 PM, Larry Garfield wrote: > Hi folks. Just a quick update: We've made one small change to the RFC. > Specifically, in order to prevent accidentally calling optional > arguments from callback locations like array_map() or array_find(), a > partial created with foo

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-25 Thread Tim Düsterhus
Hi On 7/24/25 16:04, Larry Garfield wrote: I don't think they should. Specifically the (1) and (3) should not. My expectation is that: $f = foo(a: ?, b: 2, c: ?); $f(1, 3); // calls foo(1, 2, 3); and $f = foo(c: ?, b: 2, a: ?); $f(1, 3); // calls foo(3, 2, 1); The order o

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Larry Garfield
On Thu, Jul 24, 2025, at 6:52 AM, Tim Düsterhus wrote: > Hi > > Am 2025-07-24 12:03, schrieb Tim Düsterhus: >> I don't think they should. Specifically the (1) and (3) should not. My >> expectation is that: >> >> $f = foo(a: ?, b: 2, c: ?); >> $f(1, 3); // calls foo(1, 2, 3); >> >> and >>

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Larry Garfield
On Thu, Jul 24, 2025, at 5:03 AM, Tim Düsterhus wrote: > Hi > > I did not yet have the time to check the changes and your reply in > detail, but I already wanted to follow-up on some of the points. > > Am 2025-07-23 15:55, schrieb Larry Garfield: >> $c = fn(string $s, Point $p, int $m = 0) => stuf

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Larry Garfield
On Thu, Jul 24, 2025, at 4:54 AM, Tim Düsterhus wrote: > Hi > > Am 2025-07-23 15:57, schrieb Larry Garfield: >> What other changes there are unaccounted for? I thought we'd kept up >> on the behavioral ones. > > The support for attributes (particularly #[\SensitiveParameter]) is not > mentioned

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Tim Düsterhus
Hi Am 2025-07-24 12:03, schrieb Tim Düsterhus: I don't think they should. Specifically the (1) and (3) should not. My expectation is that: $f = foo(a: ?, b: 2, c: ?); $f(1, 3); // calls foo(1, 2, 3); and $f = foo(c: ?, b: 2, a: ?); $f(1, 3); // calls foo(3, 2, 1); The order

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Tim Düsterhus
Hi I did not yet have the time to check the changes and your reply in detail, but I already wanted to follow-up on some of the points. Am 2025-07-23 15:55, schrieb Larry Garfield: $c = fn(string $s, Point $p, int $m = 0) => stuff(1, $s, 3.14, $m); I don't think this is accurate? `$p` is unu

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-24 Thread Tim Düsterhus
Hi Am 2025-07-23 15:57, schrieb Larry Garfield: What other changes there are unaccounted for? I thought we'd kept up on the behavioral ones. The support for attributes (particularly #[\SensitiveParameter]) is not mentioned in the RFC either. And as I mentioned yesterday, the observer suppor

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-23 Thread Larry Garfield
On Tue, Jul 22, 2025, at 3:18 PM, Tim Düsterhus wrote: > Hi > > Am 2025-07-22 22:02, schrieb Larry Garfield: >> It seems the discussion has quieted down and wasn't particularly >> contentious to begin with (whew), so we're just about ready for a vote. > > Would it not be appropriate to answer unan

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-23 Thread Larry Garfield
On Wed, Jul 23, 2025, at 3:56 AM, Tim Düsterhus wrote: > Hi > > Am 2025-06-28 07:06, schrieb Larry Garfield: >> https://wiki.php.net/rfc/partial_function_application_v2 > > I've now given the RFC an in-depth read. I have the following remarks: > > 1. > >> If the function is variadic, there are two

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-23 Thread Tim Düsterhus
Hi Am 2025-07-22 22:02, schrieb Larry Garfield: It seems the discussion has quieted down and wasn't particularly contentious to begin with (whew), so we're just about ready for a vote. However, Arnaud went on vacation and didn't remember to tell me when he'd be back. :-) So I'm going to wait

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-23 Thread Tim Düsterhus
Hi Am 2025-06-28 07:06, schrieb Larry Garfield: https://wiki.php.net/rfc/partial_function_application_v2 I've now given the RFC an in-depth read. I have the following remarks: 1. If the function is variadic, there are two additional rules: - Any positional placeholders that run into the v

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-22 Thread Tim Düsterhus
Hi Am 2025-07-22 22:02, schrieb Larry Garfield: It seems the discussion has quieted down and wasn't particularly contentious to begin with (whew), so we're just about ready for a vote. Would it not be appropriate to answer unanswered questions in the discussion (i.e. mine from 12 days ago) an

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-22 Thread Larry Garfield
On Sat, Jun 28, 2025, at 12:06 AM, Larry Garfield wrote: > Hi folks. Arnaud and I would like to present take-2 at Partial > Function Application. > > https://wiki.php.net/rfc/partial_function_application_v2 > > It is largely similar to the previous PFA proposal from 2021, though > there are a nu

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-10 Thread Tim Düsterhus
Hi Am 2025-07-02 18:23, schrieb Arnaud Le Blanc: We will update the RFC, but here are a few answers: I don't think this has happened yet. On Wednesday, July 2nd, 2025 at 17:05, Tim Düsterhus wrote: How will PFA calls appear in a stack trace and how will PFA Closures look like to `var_dump(

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-07 Thread Levi Morrison
> My only question: why does this implementation care if you specify too many > arguments when PHP doesn’t care if you call a function with too many > arguments? That is only true for userland functions, by the way. Internal functions do care. Historically, we could not do anything about this be

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-07 Thread Larry Garfield
On Fri, Jul 4, 2025, at 5:27 PM, Rob Landers wrote: > On Sat, Jun 28, 2025, at 07:06, Larry Garfield wrote: >> Hi folks. Arnaud and I would like to present take-2 at Partial Function >> Application. >> >> https://wiki.php.net/rfc/partial_function_application_v2 >> >> It is largely similar to th

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-04 Thread Rob Landers
On Sat, Jun 28, 2025, at 07:06, Larry Garfield wrote: > Hi folks. Arnaud and I would like to present take-2 at Partial Function > Application. > > https://wiki.php.net/rfc/partial_function_application_v2 > > It is largely similar to the previous PFA proposal from 2021, though there > are a n

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-02 Thread Gina P. Banyard
On Wednesday, 2 July 2025 at 17:26, Arnaud Le Blanc wrote: > On Wednesday, July 2nd, 2025 at 17:05, Tim Düsterhus t...@bastelstu.be wrote: > > is_callable($f, callable_name: $name); > > var_dump($name); > > > Closure::__invoke (like FCCs) I'm slightly hijacking this to mention that this seems l

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-02 Thread Arnaud Le Blanc
Hi Tim, We will update the RFC, but here are a few answers: On Wednesday, July 2nd, 2025 at 17:05, Tim Düsterhus wrote: > I've now had a quick look at the implementation and the following > questions came up that the RFC does not answer (and the tests in the PR > do not obviously answer either):

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-07-02 Thread Tim Düsterhus
Hi Am 2025-06-28 07:06, schrieb Larry Garfield: Hi folks. Arnaud and I would like to present take-2 at Partial Function Application. https://wiki.php.net/rfc/partial_function_application_v2 I've now had a *quick* look at the implementation and the following questions came up that the RFC d

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-30 Thread Larry Garfield
On Mon, Jun 30, 2025, at 2:28 AM, Tim Düsterhus wrote: > Hi > > Am 2025-06-28 07:06, schrieb Larry Garfield: >> https://wiki.php.net/rfc/partial_function_application_v2 > > Some thoughts, I did not yet take an in-depth look: > > - Will PFA be available in constant-expressions, following the “First

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-30 Thread Larry Garfield
On Sat, Jun 28, 2025, at 4:46 AM, Stephen Reay wrote: > Hi Larry, > > I noticed your list of places this applies says "all function/method > calls" but then doesn't list object invocation (__invoke magic > method). I assume that's just an oversight in the list of places it's > applicable rath

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-30 Thread Tim Düsterhus
Hi Am 2025-06-28 07:06, schrieb Larry Garfield: https://wiki.php.net/rfc/partial_function_application_v2 Some thoughts, I did not yet take an in-depth look: - Will PFA be available in constant-expressions, following the “First Class Callables in constant expressions” RFC (https://wiki.php.n

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-29 Thread Ben Ramsey
> On Jun 28, 2025, at 00:06, Larry Garfield wrote: > > Hi folks. Arnaud and I would like to present take-2 at Partial Function > Application. > > https://wiki.php.net/rfc/partial_function_application_v2 > > It is largely similar to the previous PFA proposal from 2021, though there > are a nu

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-29 Thread Levi Morrison
On Fri, Jun 27, 2025 at 11:09 PM Larry Garfield wrote: > > https://wiki.php.net/rfc/partial_function_application_v2 > > * It includes pipe-based optimizations. Good. I think this has a good chance at passing now. This small detail was one that was arduously discussed on and off list 5 years ago w

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-28 Thread Eugene Sidelnyk
On Sat, Jun 28, 2025, 8:07 AM Larry Garfield wrote: > Hi folks. Arnaud and I would like to present take-2 at Partial Function > Application. > > https://wiki.php.net/rfc/partial_function_application_v2 > > It is largely similar to the previous PFA proposal from 2021, though there > are a number

Re: [PHP-DEV] [RFC] Partial Function Application v2

2025-06-28 Thread Stephen Reay
> On 28 Jun 2025, at 12:15, Larry Garfield wrote: > > Hi folks. Arnaud and I would like to present take-2 at Partial Function > Application. > > https://wiki.php.net/rfc/partial_function_application_v2 > > It is largely similar to the previous PFA proposal from 2021, though there > are a