Re: recursion

Liste des GroupesRevenir à cl forth 
Sujet : Re: recursion
De : dxforth (at) *nospam* gmail.com (dxf)
Groupes : comp.lang.forth
Date : 17. Jul 2024, 08:47:45
Autres entêtes
Organisation : Ausics - https://newsgroups.ausics.net
Message-ID : <66977721$1@news.ausics.net>
References : 1 2 3 4 5 6
User-Agent : Mozilla Thunderbird
On 16/07/2024 10:02 pm, sjack wrote:
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
forward foo
>
: bar ( n -- ) dup . 1- foo ;
>
: foo ( n -- ) dup 0> if bar else drop then ;
>
5 foo \ prints "5 4 3 2 1 "
>
 
 
Toad code using Wil Baden type local macros ( /MM: MM ):
 
"dup . 1- myself" /mm: bar  OK
 
: foo dup 0> if mm bar else drop then ;  OK
 
5 foo 5 4 3 2 1  OK
 
Note: The macro BAR does not remain in the system image.

I would use:

  defer foo

  : bar ( n -- ) dup . 1- foo ;

  :noname ( n -- ) dup 0> if bar else drop then ; is foo

  5 foo \ prints "5 4 3 2 1 "

DEFER may not be as fast as a directly patched definition but neither
has that prevented a generation from using it.


Date Sujet#  Auteur
14 Jul 24 * Re: exercise in double number arithmetic35Marc Olschok
14 Jul 24 +- Re: exercise in double number arithmetic1Marc Olschok
15 Jul 24 +* Re: exercise in double number arithmetic12Krishna Myneni
15 Jul 24 i+* Re: exercise in double number arithmetic8minforth
15 Jul 24 ii`* Re: exercise in double number arithmetic7minforth
15 Jul 24 ii `* Re: exercise in double number arithmetic6Ahmed
15 Jul 24 ii  `* Re: exercise in double number arithmetic5minforth
15 Jul 24 ii   +- Re: exercise in double number arithmetic1minforth
15 Jul 24 ii   +- Re: exercise in double number arithmetic1Ahmed
15 Jul 24 ii   `* Re: exercise in double number arithmetic2albert
15 Jul 24 ii    `- Re: exercise in double number arithmetic1minforth
15 Jul 24 i+- Re: exercise in double number arithmetic1Anton Ertl
15 Jul 24 i+- Re: exercise in double number arithmetic1Gerry Jackson
31 Jul 24 i`- Re: exercise in double number arithmetic1Marc Olschok
15 Jul 24 `* Re: exercise in double number arithmetic21minforth
15 Jul 24  `* recursion (was: exercise in double number arithmetic)20Anton Ertl
15 Jul 24   +* Re: recursion10Marc Olschok
15 Jul 24   i`* Re: recursion9Ruvim
15 Jul 24   i +* Re: recursion5Gerry Jackson
15 Jul 24   i i+* Re: recursion2Gerry Jackson
16 Jul 24   i ii`- Re: recursion1Gerry Jackson
16 Jul 24   i i`* Re: recursion2Ruvim
16 Jul 24   i i `- Re: recursion1dxf
16 Jul 24   i +- Re: recursion1mhx
16 Jul 24   i `* Re: recursion2Ruvim
16 Jul 24   i  `- Re: recursion1Ruvim
16 Jul 24   `* Re: recursion9sjack
16 Jul 24    +- Re: recursion1sjack
16 Jul 24    +* Re: recursion4minforth
16 Jul 24    i`* Re: recursion3sjack
16 Jul 24    i `* Re: recursion2minforth
16 Jul 24    i  `- Re: recursion1mhx
17 Jul 24    `* Re: recursion3dxf
22 Jul 24     `* Re: recursion2Stephen Pelc
22 Jul 24      `- Re: recursion1Anton Ertl

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal