Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #120348
| Path | csiph.com!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Michael S <already5chosen@yahoo.com> |
| Newsgroups | comp.lang.c++ |
| Subject | Re: thread about the pros and cons of lambdas, but more about cons |
| Date | Thu, 26 Sep 2024 10:58:46 +0300 |
| Organization | A noiseless patient Spider |
| Lines | 61 |
| Message-ID | <20240926105846.00003cfe@yahoo.com> (permalink) |
| References | <20240925195423.00007ecc@yahoo.com> <871q17idqr.fsf@bsb.me.uk> |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=US-ASCII |
| Content-Transfer-Encoding | 7bit |
| Injection-Date | Thu, 26 Sep 2024 09:58:18 +0200 (CEST) |
| Injection-Info | dont-email.me; posting-host="0a0a23bb9a5cdf54d1f1728132504b69"; logging-data="121272"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18tzSq+bOnkyNjFeGaa3NgC3PvBxU+sQmg=" |
| Cancel-Lock | sha1:TJ76fKYMf7tqeVS+uRFyNbJZO7g= |
| X-Newsreader | Claws Mail 3.19.1 (GTK+ 2.24.33; x86_64-w64-mingw32) |
| Xref | csiph.com comp.lang.c++:120348 |
Show key headers only | View raw
On Wed, 25 Sep 2024 23:13:00 +0100 Ben Bacarisse <ben@bsb.me.uk> wrote: > Michael S <already5chosen@yahoo.com> writes: > > > > > // end of floodfill_recursive_lambda. > > > > > > In the second variant in order to make it compile at all I had to > > uses very dirty trick with lambda passed as parameter to itself. I > > copied it from Stack Overflow, but don't pretend to understand why > > it works and why it needed in the first place. > > For this part the answer is simple. The lambda only captures names > that are defined at its point of definition, and core is not defined > until the end of the declarator which include the initialisation -- > the lambda you are defining. The lambda stored in 'core', can't > therefore refer to the name core because core was not defined before > the lambda. It does not sound too different from struct that holds pointer to itself. If forward declaration works for later I don't see why it can not work for the former. Isn't lambda a sort of struct when we look under the hood? May be, the syntax for forward declaration would need a new keyword, but that does not sound like exaggerated price for convenience and for improved readability. > You can, instead, do this (untested): > <snip> > > > But that's only part of the story. > > The other part is that the first variant is 1.2x faster. > > Interesting, though this is not really what a lambda is for. What you > want here is a plain lexical nested function -- it's purpose being > just an auxiliary function that can refer to the outer scope so as to > require fewer parameters. > Yes, that's a fair definition of my needs. The main and almost only reason for having core() instead of calling recursively to floodfill4() itself is to reduce the size of stack frame of recursive call. > It would be interesting to see is gcc's nested function extension > produced something that was faster than a lambda. > > Note: this is a very old problem and actually pre-dates the computing > era. Combinatory logic had to come up with the Y combinator to make > recursive "functions", and (slightly more recently) some Lisps have > two forms of 'let' to deal with this issue. > I don't know what is Y combinator. I do know that in Go forward declaration works fine.
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar
thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-25 19:54 +0300
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-25 19:17 +0200
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-25 19:55 +0200
Re: thread about the pros and cons of lambdas, but more about cons Paavo Helde <eesnimi@osa.pri.ee> - 2024-09-25 22:53 +0300
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-25 23:30 +0300
Re: thread about the pros and cons of lambdas, but more about cons Paavo Helde <eesnimi@osa.pri.ee> - 2024-09-26 00:04 +0300
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 11:17 +0300
Re: thread about the pros and cons of lambdas, but more about cons Paavo Helde <eesnimi@osa.pri.ee> - 2024-09-26 11:25 +0300
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 10:28 +0200
Re: thread about the pros and cons of lambdas, but more about cons Paavo Helde <eesnimi@osa.pri.ee> - 2024-09-26 11:49 +0300
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 11:38 +0300
Re: thread about the pros and cons of lambdas, but more about cons Ben Bacarisse <ben@bsb.me.uk> - 2024-09-25 23:13 +0100
Re: thread about the pros and cons of lambdas, but more about cons Ben Bacarisse <ben@bsb.me.uk> - 2024-09-25 23:28 +0100
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 10:41 +0300
Re: thread about the pros and cons of lambdas, but more about cons David Brown <david.brown@hesbynett.no> - 2024-09-26 10:29 +0200
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 11:35 +0200
Re: thread about the pros and cons of lambdas, but more about cons David Brown <david.brown@hesbynett.no> - 2024-09-26 13:27 +0200
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 13:31 +0200
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 15:25 +0300
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 14:58 +0200
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 16:53 +0300
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 15:54 +0200
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-27 16:55 +0300
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-26 10:01 -0700
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 19:04 +0200
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 20:20 +0300
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-26 10:38 -0700
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-27 16:27 +0300
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-28 04:06 -0700
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-26 10:58 +0300
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-26 10:27 -0700
Re: thread about the pros and cons of lambdas, but more about cons Bonita Montero <Bonita.Montero@gmail.com> - 2024-09-26 19:32 +0200
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-26 14:09 -0700
Re: thread about the pros and cons of lambdas, but more about cons Michael S <already5chosen@yahoo.com> - 2024-09-27 16:15 +0300
Re: thread about the pros and cons of lambdas, but more about cons Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-09-28 04:25 -0700
csiph-web