While this doesn't impact the code I'm working on directly, I think it is a
good idea for two reasons:
1. It will make the AST cleaner
2. This transformation doesn't really have anything to do with function
resolution and so it should be done somewhere else
Right now there is a lot going on in function resolution; moving this to
somewhere else in the compiler would make the code easier to understand.
- Chris
On Wed, Jan 15, 2014 at 11:52 AM, Brad Chamberlain <[email protected]> wrote:
>
> > The thing I would like to add here is that I found it very confusing
> > (but am used to it now) that Class within the compiler means
> > - reference
> > - record
> > - class
> > - tuple
> >
> > I don't philosophically disagree with 'things with fields' being
> > grouped into one AST element, but that AST element should be
> > called "Aggregate" or "Container" or something, not Class...
>
> Not so long ago, there was agreement to make this change on the mailing
> list, but then nobody ever did it. I'll add it to our task list (unless
> you want to take it on). I don't remember what term we converged on the
> last time this was discussed, but it may not be hard to find in the
> archives (or perhaps someone else remembers).
>
>
> > And along the same lines, I don't think that reference belongs
> > in the "Aggregate" group, since it only ever holds one element.
>
> I think this is an offshoot of how the compiler implements references --
> by using a class with a single value to represent the "pointer-to-value"
> concept. I believe the goal was to unify cases in the compiler related to
> pointer-/alias-analysis. I'm not opposed to moving away from this, but
> suspect it would be a pretty big undertaking. Maybe it would fall out
> fairly directly if we're successful in making the change proposed here...
> not sure.
>
> -Brad
>
>
>
> ------------------------------------------------------------------------------
> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> Learn Why More Businesses Are Choosing CenturyLink Cloud For
> Critical Workloads, Development Environments & Everything In Between.
> Get a Quote or Start a Free Trial Today.
>
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> _______________________________________________
> Chapel-developers mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/chapel-developers
>
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
Chapel-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-developers