9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: David Tolpin <dvd@davidashen.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] Re: advantages of limbo
Date: Tue,  2 Mar 2004 20:06:57 +0400	[thread overview]
Message-ID: <200403021606.i22G6vl9074244@adat.davidashen.net> (raw)
In-Reply-To: <fe324c904b77de93a977cdd932061bbf@vitanuova.com>

> From: C H Forsyth <forsyth@vitanuova.com>
>
> > Yet [Java] is more powerful in expressing algorithms. Things like closures
> > or message polymorphism are natural and easy to express in Java, while
>
> Java has closures?
>

Of course it does.

interface Appl {Object f(Object o);}

interface List {void foreach(Appl a);}

class test {
  void do(List l) {
    String s="element: ";
    l.foreach(new Appl() {
      String t=s;
      Object f(Object o) {
	System.out.println(t+o);
      }
    });
  }
}

Untested, but the idea is simple: foreach is passed a dynamic
closure with variable s inherited from the context.

t=s is to show how a local binding can be explicitely created,
one could simply write

    l.foreach(new Appl() {
      Object f(Object o) {
	System.out.println(s+o);
      }
...

David


  reply	other threads:[~2004-03-02 16:06 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <f62d09b11d1f097b3f4b5f6b70b65ea5@proxima.alt.za>
2004-03-02  6:58 ` David Tolpin
2004-03-02  7:06   ` Fco.J.Ballesteros
2004-03-02  7:08     ` David Tolpin
2004-03-02  7:14       ` Fco.J.Ballesteros
2004-03-02  7:30         ` David Tolpin
2004-03-02  7:37           ` Fco.J.Ballesteros
2004-03-02  7:48             ` David Tolpin
2004-03-02  9:50               ` Fco.J.Ballesteros
2004-03-02 20:50               ` Andrew Simmons
2004-03-02 20:56                 ` matt
2004-03-02 20:57                   ` ron minnich
2004-03-02 12:44           ` Bruce Ellis
2004-03-02  7:50   ` lucio
2004-03-02  7:56     ` David Tolpin
2004-03-02  8:12       ` Charles Forsyth
2004-03-02  8:12         ` David Tolpin
2004-03-02  8:45           ` Charles Forsyth
2004-03-02  8:51             ` David Tolpin
2004-03-02  9:06               ` David Presotto
2004-03-02  9:14                 ` David Tolpin
2004-03-02  9:26                   ` Charles Forsyth
2004-03-02 15:04       ` rog
2004-03-02 15:12         ` David Tolpin
2004-03-02 16:03         ` C H Forsyth
2004-03-02 16:06           ` David Tolpin [this message]
2004-03-02 16:24             ` David Tolpin
2004-03-02 16:35             ` C H Forsyth
2004-03-02 17:18     ` andrey mirtchovski
2004-03-02 12:39   ` Bruce Ellis
2004-03-02  8:02 David Presotto
2004-03-02  8:20 ` David Tolpin
2004-03-02  8:55   ` David Presotto
2004-03-02  9:20   ` Rob Pike
     [not found] <918d202b192f1bcb8dd969285010a329@proxima.alt.za>
2004-03-02  8:37 ` David Tolpin
     [not found] <d02d8014f5f4b58c6863ec7a3cd652ee@proxima.alt.za>
2004-03-02  9:07 ` David Tolpin
2004-03-02 10:04   ` lucio
2004-03-02 10:08     ` Fco.J.Ballesteros
2004-03-02 11:35       ` matt
2004-03-02 18:38         ` boyd, rounin
2004-03-02 19:03           ` Fco.J.Ballesteros
2004-03-02 19:10             ` rog
2004-03-02 19:08               ` Fco.J.Ballesteros
2004-03-02 15:03 rog
2004-03-03  7:21 YAMANASHI Takeshi
2004-03-03  7:29 ` Kenji Okamoto
2004-03-03  7:31   ` Kenji Okamoto
2004-03-03  7:37 YAMANASHI Takeshi
2004-03-03 12:29 ` boyd, rounin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200403021606.i22G6vl9074244@adat.davidashen.net \
    --to=dvd@davidashen.net \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).