Hi -

On 7/14/16, 7:39 AM, "Tomsy Paul" <[email protected]> wrote:

>What about "local" ?


Well, local already means "on a single locale", as with the local
block:

var x = 12;
on Locales[1] {
  local {
    // communication not allowed within this block
    var A:[1..100] int;
    A += x; // error: use of x causes communication
  }
}

We've been talking about getting rid of the local block, but then
I think we might want to have a way to say a variable/field is always
used in a way that does not cause communication, so that might
use 'local'.

-michael
    
>On Jul 14, 2016 4:17 AM, "Brad Chamberlain" <[email protected]> wrote:
>
>
>Hi Chapel Users and Developers --
>
>In recent months, we've been talking about adding support for
>function-local "static" variables in the C sense:  ones that are allocated
>and initialized once, and whose values are retained across multiple calls
>to the function.  However, we're not crazy about using the keyword
>'static', so are soliciting alternatives from the community.
>
>In more detail (and using 'static' as a placeholder keyword for now):
>
>Variables like the following...
>
>        proc foo() {
>          static var x = 1,
>                  var A: [1..100] real;
>
>          ...x...
>          ...A[i]...
>        }
>
>could be considered to be equivalent to:
>
>        private var chpl_foo_x = 1,
>                    chpl_foo_A: [1..100] real;
>
>        proc foo() {
>          ...chpl_foo_x...
>          ...chpl_foo_A[i]...
>        }
>
>where no procedures other than foo() would have any means of referring to
>'chpl_foo_x' or 'chpl_foo_A'.
>
>The historical opposition to using 'static' for this purpose is that it's
>too compiler-/CS-centric and not particularly intuitive to computational
>scientists (particularly those who don't come from a C background).
>OTOH, C is not the worst precedent to follow.  In any case, it seemed
>worthwhile to poll the community for alternative suggestions and opinions.
>
>Please send any proposed keywords to me, optionally with a short
>rationale.  In a few days, I'll send out a summary of responses received
>(including our own brainstorming, which I don't want to influence you with
>at the outset).
>
>Thanks!
>-Brad
>
>
>--------------------------------------------------------------------------
>----
>What NetFlow Analyzer can do for you? Monitors network bandwidth and
>traffic
>patterns at an interface-level. Reveals which users, apps, and protocols
>are
>consuming the most bandwidth. Provides multi-vendor support for NetFlow,
>J-Flow, sFlow and other flows. Make informed decisions using capacity
>planning
>reports.http://sdm.link/zohodev2dev
>_______________________________________________
>Chapel-developers mailing list
>[email protected]
>https://lists.sourceforge.net/lists/listinfo/chapel-developers
>
>
>

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Chapel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-users

Reply via email to