On Thu, Jan 10, 2013 at 1:21 PM, Hernan Wilkinson <hernan.wilkinson@10pines.com> wrote:
Was my interpretation of Alias incorrect? or is the current implementation of alias incorrect? (maybe due to some implementation problems?)
@ is an Alias operator, not a Rename operator. That means when you alias { #m3 -> #m1 } you get a new name for the same method. So what you see is the expected behavior, as defined in the paper. And the direction of the arrow makes sense: #m3 -> #m1 is read as "m3 is a new name for m1", whereas for a Rename operator, we would probably have something like "#m1 -> #m3", i.e., m1 is renamed to m3. In a fully dynamic language, a Rename operator would be quite hard to implement I guess, IIRC Eiffel has a rename operator. -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill