Re: Recursion, Yo

Liste des GroupesRevenir à cl c 
Sujet : Re: Recursion, Yo
De : david.brown (at) *nospam* hesbynett.no (David Brown)
Groupes : comp.lang.c
Date : 10. Apr 2024, 09:11:49
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <uv5e3l$q885$1@dont-email.me>
References : 1 2 3 4 5
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0
On 10/04/2024 03:50, Lawrence D'Oliveiro wrote:
On Tue, 09 Apr 2024 11:44:23 +0100, Ben Bacarisse wrote:
 
It's significant (or at least note worthy) that the code in the
original post was not ISO C ...
 Interesting that GCC’s C compiler allows nested routine definitions,
but the C++ compiler does not.
It is an old extension, going back to when gcc barely (if at all) supported C++.  The compiler middle-end had to have support for nested functions for languages like Pascal, Module 2 and Ada (I believe Ada is the only one of these that stuck around in gcc mainline, but other language front-ends have been made outside the main tree).  Someone thought it might be a useful feature in C too, and perhaps something that would catch on in the standards (several early gcc extensions ended up standardised in C99).
It is not much used in practice, AFAIK.  For some cases the code generation for nested functions was fine and straight-forward.  In other cases, however, it required a trampoline generated on the stack, and that became a real pain once non-executable stacks came into fashion.
Nested functions were never as interesting for C++ as you already have better mechanisms for controlling scope and data access - classes and their methods, including nested classes.  And once lambdas joined the party in C++11 there was absolutely no reason to have nested functions - there is nothing (AFAIK) that you could do with nested functions that you can't do at least as well, and often better, with lambdas.

Date Sujet#  Auteur
7 Apr 24 * Recursion, Yo102Lawrence D'Oliveiro
7 Apr 24 +* Re: Recursion, Yo100fir
9 Apr 24 i`* Re: Recursion, Yo99Janis Papanagnou
9 Apr 24 i +* Re: Recursion, Yo7Lawrence D'Oliveiro
9 Apr 24 i i+* Re: Recursion, Yo5Janis Papanagnou
9 Apr 24 i ii`* Re: Recursion, Yo4Ben Bacarisse
9 Apr 24 i ii `* Re: Recursion, Yo3Janis Papanagnou
9 Apr 24 i ii  `* Re: Recursion, Yo2Keith Thompson
10 Apr 24 i ii   `- Re: Recursion, Yo1Janis Papanagnou
9 Apr 24 i i`- Re: Recursion, Yo1bart
9 Apr 24 i `* Re: Recursion, Yo91Ben Bacarisse
9 Apr 24 i  +- Re: Recursion, Yo1Ben Bacarisse
10 Apr 24 i  `* Re: Recursion, Yo89Lawrence D'Oliveiro
10 Apr 24 i   +- Re: Recursion, Yo1Chris M. Thomasson
10 Apr 24 i   +* Re: Recursion, Yo86David Brown
10 Apr 24 i   i+* Re: Recursion, Yo84Lawrence D'Oliveiro
10 Apr 24 i   ii`* Re: Recursion, Yo83David Brown
10 Apr 24 i   ii +* Re: Recursion, Yo73bart
10 Apr 24 i   ii i+* Re: Recursion, Yo71David Brown
11 Apr 24 i   ii ii`* Re: Recursion, Yo70Lawrence D'Oliveiro
11 Apr 24 i   ii ii +* Re: Recursion, Yo4Kaz Kylheku
11 Apr 24 i   ii ii i`* Heh heh... (Was: Recursion, Yo)3Kenny McCormack
11 Apr 24 i   ii ii i `* Re: Heh heh... (Was: Recursion, Yo)2Kaz Kylheku
11 Apr 24 i   ii ii i  `- Re: Heh heh... (Was: Recursion, Yo)1Kenny McCormack
11 Apr 24 i   ii ii `* Re: Recursion, Yo65David Brown
11 Apr 24 i   ii ii  +* Re: Recursion, Yo62Kaz Kylheku
11 Apr 24 i   ii ii  i+- Re: Recursion, Yo1David Brown
12 Apr 24 i   ii ii  i`* Re: Recursion, Yo60Lawrence D'Oliveiro
12 Apr 24 i   ii ii  i +* Re: Recursion, Yo2Kaz Kylheku
12 Apr 24 i   ii ii  i i`- Re: Recursion, Yo1Dan Cross
12 Apr 24 i   ii ii  i `* Re: Recursion, Yo57Janis Papanagnou
12 Apr 24 i   ii ii  i  +* Re: Recursion, Yo6David Brown
12 Apr 24 i   ii ii  i  i`* Re: Recursion, Yo5Janis Papanagnou
12 Apr 24 i   ii ii  i  i +* Re: Recursion, Yo3David Brown
13 Apr 24 i   ii ii  i  i i`* Re: Recursion, Yo2Janis Papanagnou
13 Apr 24 i   ii ii  i  i i `- Re: Recursion, Yo1David Brown
13 Apr 24 i   ii ii  i  i `- Re: Recursion, Yo1Lawrence D'Oliveiro
12 Apr 24 i   ii ii  i  +* Re: Recursion, Yo45Lawrence D'Oliveiro
12 Apr 24 i   ii ii  i  i`* Re: Recursion, Yo44Janis Papanagnou
12 Apr 24 i   ii ii  i  i +- Re: Recursion, Yo1bart
13 Apr 24 i   ii ii  i  i `* Re: Recursion, Yo42Lawrence D'Oliveiro
13 Apr 24 i   ii ii  i  i  +* Re: Recursion, Yo14Michael S
14 Apr 24 i   ii ii  i  i  i+* Re: Recursion, Yo11Ben Bacarisse
14 Apr 24 i   ii ii  i  i  ii`* Re: Recursion, Yo10Michael S
15 Apr 24 i   ii ii  i  i  ii `* Re: Recursion, Yo9Janis Papanagnou
15 Apr 24 i   ii ii  i  i  ii  `* Re: Recursion, Yo8Keith Thompson
15 Apr 24 i   ii ii  i  i  ii   `* Re: Recursion, Yo7Ben Bacarisse
15 Apr 24 i   ii ii  i  i  ii    `* Re: Recursion, Yo6Keith Thompson
15 Apr 24 i   ii ii  i  i  ii     +* Re: Recursion, Yo2bart
15 Apr 24 i   ii ii  i  i  ii     i`- Re: Recursion, Yo1Ben Bacarisse
15 Apr 24 i   ii ii  i  i  ii     `* Re: Recursion, Yo3Janis Papanagnou
15 Apr 24 i   ii ii  i  i  ii      +- Re: Recursion, Yo1Janis Papanagnou
15 Apr 24 i   ii ii  i  i  ii      `- Re: Recursion, Yo1Keith Thompson
14 Apr 24 i   ii ii  i  i  i`* Re: Recursion, Yo2Lawrence D'Oliveiro
14 Apr 24 i   ii ii  i  i  i `- Re: Recursion, Yo1Keith Thompson
13 Apr 24 i   ii ii  i  i  `* Re: Recursion, Yo27Janis Papanagnou
14 Apr 24 i   ii ii  i  i   `* Re: Recursion, Yo26Lawrence D'Oliveiro
14 Apr 24 i   ii ii  i  i    `* Re: Recursion, Yo25Ben Bacarisse
14 Apr 24 i   ii ii  i  i     +* Re: Recursion, Yo2bart
14 Apr 24 i   ii ii  i  i     i`- Re: Recursion, Yo1Ben Bacarisse
15 Apr 24 i   ii ii  i  i     `* Re: Recursion, Yo22Lawrence D'Oliveiro
15 Apr 24 i   ii ii  i  i      +* Re: Recursion, Yo20Chris M. Thomasson
15 Apr 24 i   ii ii  i  i      i+* Re: Recursion, Yo5Ben Bacarisse
16 Apr 24 i   ii ii  i  i      ii`* Re: Recursion, Yo4Lawrence D'Oliveiro
17 Apr 24 i   ii ii  i  i      ii `* Re: Recursion, Yo3Ben Bacarisse
18 Apr 24 i   ii ii  i  i      ii  `* Re: Recursion, Yo2Lawrence D'Oliveiro
22 Apr 24 i   ii ii  i  i      ii   `- Re: Recursion, Yo1Janis Papanagnou
15 Apr 24 i   ii ii  i  i      i`* Re: Recursion, Yo14Janis Papanagnou
16 Apr 24 i   ii ii  i  i      i +* Re: Recursion, Yo2Lawrence D'Oliveiro
22 Apr 24 i   ii ii  i  i      i i`- Re: Recursion, Yo1Janis Papanagnou
16 Apr 24 i   ii ii  i  i      i `* Re: Recursion, Yo11Michael S
19 Apr 24 i   ii ii  i  i      i  +* Re: Recursion, Yo9Tim Rentsch
19 Apr 24 i   ii ii  i  i      i  i+* Re: Recursion, Yo4bart
20 Apr 24 i   ii ii  i  i      i  ii`* Re: Recursion, Yo3Ben Bacarisse
20 Apr 24 i   ii ii  i  i      i  ii +- Re: Recursion, Yo1Keith Thompson
20 Apr 24 i   ii ii  i  i      i  ii `- Re: Recursion, Yo1Kaz Kylheku
19 Apr 24 i   ii ii  i  i      i  i+- Re: Recursion, Yo1Keith Thompson
19 Apr 24 i   ii ii  i  i      i  i+* Re: Recursion, Yo2Keith Thompson
20 Apr 24 i   ii ii  i  i      i  ii`- Re: Recursion, Yo1Tim Rentsch
20 Apr 24 i   ii ii  i  i      i  i`- Re: Recursion, Yo1Tim Rentsch
22 Apr 24 i   ii ii  i  i      i  `- Re: Recursion, Yo1Janis Papanagnou
15 Apr 24 i   ii ii  i  i      `- Re: Recursion, Yo1Ben Bacarisse
12 Apr 24 i   ii ii  i  +* Re: Recursion, Yo4bart
12 Apr 24 i   ii ii  i  i+* Re: Recursion, Yo2Janis Papanagnou
12 Apr 24 i   ii ii  i  ii`- Re: Recursion, Yo1bart
13 Apr 24 i   ii ii  i  i`- Re: Recursion, Yo1Keith Thompson
13 Apr 24 i   ii ii  i  `- Re: Recursion, Yo1Tim Rentsch
11 Apr 24 i   ii ii  `* Re: Recursion, Yo2Keith Thompson
12 Apr 24 i   ii ii   `- Re: Recursion, Yo1David Brown
14 Apr 24 i   ii i`- Re: Recursion, Yo1fir
10 Apr 24 i   ii +- Re: Recursion, Yo1Janis Papanagnou
10 Apr 24 i   ii +* Re: Recursion, Yo2Kaz Kylheku
10 Apr 24 i   ii i`- Re: Recursion, Yo1David Brown
11 Apr 24 i   ii +* Re: Recursion, Yo2Lawrence D'Oliveiro
12 Apr 24 i   ii i`- Re: Recursion, Yo1Ben Bacarisse
11 Apr 24 i   ii `* Re: Recursion, Yo4Lawrence D'Oliveiro
11 Apr 24 i   ii  +- Re: Recursion, Yo1Kaz Kylheku
11 Apr 24 i   ii  `* Re: Recursion, Yo2David Brown
11 Apr 24 i   ii   `- Re: Recursion, Yo1Lawrence D'Oliveiro
10 Apr 24 i   i`- Re: Recursion, Yo1Kaz Kylheku
10 Apr 24 i   `- Re: Recursion, Yo1Tim Rentsch
9 Apr 24 `- Re: Recursion, Yo1Lawrence D'Oliveiro

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal