namgk / ambienttalk

Automatically exported from code.google.com/p/ambienttalk
0 stars 0 forks source link

Provenance of Closures #55

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
It would be useful to be able to determine how a method/closure was found:
via lexical lookup? &m
via selection along the object path? o.&m

In the latter case, dynamic inheritance would imply that repeating the 
selection (o.&m) could have different results, if the parent chain is altered 
at some point in time. Lexical lookup cannot be repeated (the operation is not 
exposed as a meta-operation) and would always return the same result (provided 
issue 10 is addressed).

This meta-information is used by the AmbientTalk/R interpreter to determine 
whether to lift a function call or a method invocation. As such it can either 
be part of the art-patch, or (preferably) it can be made part of the trunk.

A patch with the required changes is attached.

Original issue reported on code.google.com by smost...@gmail.com on 8 Sep 2011 at 12:05

Attachments:

GoogleCodeExporter commented 8 years ago
This is covered by revisions (r2939-r2941) which adds the proposed support to 
/interpreter/branches/atr-patch/provenance-*

It was considered that for the time being, no such functionality was required 
in the AmbientTalk trunk project. Since it is necessary for AT/R, it is 
maintained as part of the art-patch branch, yet kept separate from code that 
actually deals with event sources and/or reactive values.

Original comment by smost...@gmail.com on 27 Sep 2011 at 10:15