Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #47737

Re: Quotations

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups comp.lang.forth
Subject Re: Quotations
Date 2016-06-02 13:54 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2016Jun2.155422@mips.complang.tuwien.ac.at> (permalink)
References (4 earlier) <58c4638d-3015-4b2a-bfc1-b7abb368dbd3@googlegroups.com> <2016Jun1.162929@mips.complang.tuwien.ac.at> <nio6hb$fd6$1@gioia.aioe.org> <X4Odnd2-vbnwYtLKnZ2dnUU7-bPNnZ2d@supernews.com> <c75df337-769e-4e18-aa91-28d2bf7b6d8f@googlegroups.com>

Show all headers | View raw


Raimond Dragomir <raimond.dragomir@gmail.com> writes:
>
>> One problem with this approach is the lifetime of the quotations.
>> There's no garbage collection, so we have to put the captured locals
>
>Who said the parent's locals should be captured? Local variables are 
>"local" variables. When parent exits, its locals are gone. Simple as that.

So you want Pascal-like behaviour.  This brings us back to the
question of usefulness (and efficiency, see below): I have seen one or
two examples where Pascal locals provided something that could not be
achieved without outer locals, and these examples were not production
code.  And the victory of C (which does not have nested functions)
over Pascal indicates that access to outer locals with the Pascal
limitation is not a decisive benefit.

OTOH, I have seen lots of nice examples of using full-blown closures
where locals live on after the function where they were defined has
exited.  But we probably don't want to go there in Forth because of
garbage-management issues.

Anyway, if we first standardize quotations without access to outer
locals (leaving such accesses ambiguous), systems can provide extended
versions of that with such access, and if programmers find that
useful, it will spread, and when there is common practice, that can be
standardized as well.

>The mechanism is so simple and easy to implement... Did you hear about frame pointers?

And static link chains (or displays), if you want to implement access
to outer locals.  Which means additional overhead and implementation
complexity, especially if you want to reduce the overhead for those
cases where the frame pointers etc. are not needed.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-05 22:35 -0700
  Re: Quotations humptydumpty <ouatubi@gmail.com> - 2015-07-05 23:03 -0700
    Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-05 23:21 -0700
    Re: Quotations humptydumpty <ouatubi@gmail.com> - 2015-07-06 00:00 -0700
  Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-06 00:10 -0700
  Re: Quotations Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2015-07-06 09:39 +0100
    Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-06 05:28 -0700
      Re: Quotations franck.bensusan@gmail.com - 2015-07-06 15:02 -0700
        Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-06 22:43 -0700
          Re: Quotations Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-07-06 23:06 -0700
            Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-07 01:27 -0700
              Re: Quotations Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-07-07 03:40 -0700
          Re: Quotations franck.bensusan@gmail.com - 2015-07-07 04:08 -0700
      Re: Quotations humptydumpty <ouatubi@gmail.com> - 2015-07-10 02:34 -0700
        Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-14 11:30 -0700
          Re: Quotations franck.bensusan@gmail.com - 2015-07-16 03:28 -0700
            Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-07-16 09:11 -0700
    Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2015-07-08 12:04 -0700
  Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-28 13:06 -0700
  Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-29 02:22 -0700
    Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-29 10:41 -0700
      Re: Quotations franck.bensusan@gmail.com - 2016-05-29 12:38 -0700
        Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-29 23:03 -0700
          Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 00:34 -0700
            Re: Quotations franck.bensusan@gmail.com - 2016-05-30 03:04 -0700
              Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 03:41 -0700
                Re: Quotations franck.bensusan@gmail.com - 2016-05-30 08:26 -0700
                Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 08:46 -0700
            Re: Quotations Cecil Bayona <cbayona@cbayona.com> - 2016-05-30 10:01 -0500
              Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 08:33 -0700
          Re: Quotations franck.bensusan@gmail.com - 2016-05-30 00:44 -0700
            Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 01:03 -0700
            Re: Quotations hughaguilar96@gmail.com - 2016-06-02 22:07 -0700
              Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-06-02 23:11 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-03 05:18 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-03 05:28 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-03 05:56 -0700
          Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-05-30 15:24 +0000
            Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 11:33 -0700
              Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-01 14:23 +0000
            Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 11:46 -0700
              Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-01 14:27 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-01 07:53 -0700
            Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 12:43 -0700
              Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-31 13:25 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-05-31 16:57 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-05-31 19:33 -0700
                Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-06-01 03:20 -0700
                Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-06-01 03:15 -0700
              Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-01 14:29 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-01 08:20 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-01 18:59 -0700
                Re: Quotations "WJ" <w_a_x_man@yahoo.com> - 2016-06-02 06:05 +0000
                Re: Quotations alex@rivadpm.com - 2016-06-09 09:59 -0700
                Re: Quotations "WJ" <w_a_x_man@yahoo.com> - 2016-06-09 17:47 +0000
                Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-06-01 09:12 -0700
                Re: Quotations "HAA" <someone@microsoft.com> - 2016-06-02 12:45 +1000
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-02 04:42 -0500
                Re: Quotations Raimond Dragomir <raimond.dragomir@gmail.com> - 2016-06-02 05:08 -0700
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-02 06:53 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-02 13:54 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-02 13:09 -0700
                Re: Quotations "HAA" <someone@microsoft.com> - 2016-06-04 12:45 +1000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-03 20:52 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-04 15:05 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-06 01:41 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-06 13:12 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-06 08:29 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-07 06:06 +0000
                Re: Quotations mhx@iae.nl - 2016-06-06 10:51 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-07 06:36 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-07 00:44 -0700
                Re: Quotations mhx@iae.nl - 2016-06-07 11:35 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-08 07:14 +0000
                Re: Quotations hughaguilar96@gmail.com - 2016-06-09 00:58 -0700
                Re: Quotations "WJ" <w_a_x_man@yahoo.com> - 2016-06-09 11:37 +0000
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-07 12:37 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-07 19:03 -0700
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-02 11:12 -0500
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-02 09:42 -0700
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-03 02:53 -0500
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-03 23:00 -0700
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-04 04:37 -0500
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-05 19:12 -0700
                Re: Quotations Paul Rubin <no.email@nospam.invalid> - 2016-06-05 21:20 -0700
                Re: Quotations franck.bensusan@gmail.com - 2016-06-09 02:55 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-09 19:20 -0700
                Re: Quotations franck.bensusan@gmail.com - 2016-06-10 07:00 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-10 10:00 -0700
                Re: Quotations franck.bensusan@gmail.com - 2016-06-10 10:56 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-10 17:56 -0700
                Re: Quotations Mark Wills <markwills1970@gmail.com> - 2016-06-14 05:18 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-26 16:12 -0700
                Re: Quotations hughaguilar96@gmail.com - 2016-06-02 12:41 -0700
                Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-06-02 13:03 -0700
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-02 13:37 +0000
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-08 04:33 -0500
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-08 09:39 +0000
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-08 05:53 -0500
                Re: Quotations anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-08 11:30 +0000
                Re: Quotations Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-08 08:11 -0500
                Re: Quotations hughaguilar96@gmail.com - 2016-06-09 01:09 -0700
      Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-30 08:54 -0700
    Re: Quotations hughaguilar96@gmail.com - 2016-05-31 12:06 -0700
      Re: Quotations humptydumpty <ouatubi@gmail.com> - 2016-05-31 13:41 -0700
      Re: Quotations "WJ" <w_a_x_man@yahoo.com> - 2016-05-31 21:09 +0000
  Lambdas (closures) "WJ" <w_a_x_man@yahoo.com> - 2016-06-09 17:18 +0000

csiph-web