Eiffel solves the problem as you suggest, but uses the term Precursor
rather than prior.

Kevin D Robbins

"Hal E. Fulton" <hal9000 / hypermetrics.com> wrote in message news:<000b01c1e1f0$03d9f1a0$0300a8c0 / austin.rr.com>...
> OK, maybe this is an idea no one will like. Or
> maybe it's been thought of, maybe even
> rejected already. Maybe there's a reason it
> won't work. At 2 a.m. my time, it's not obvious.  :)
> 
> Let me start by asking a rhetorical question:
> Why do we have the special name "super"?
> 
> Obviously we could do it other ways. I'm just
> winging it here:
> 
>     class Child < Parent
> 
>       def mymeth
>           #...
>           Parent.mymeth
>       end
> 
>     end
> 
> But it's somehow cooler, neater, more logical to
> say "super" (is it not?).
> 
> Now, consider this common situation.
> 
>     alias old_system_method system_method
> 
>     def system_method
>         if today == Sunday
>            # Do some other stuff...
>         end
>         old_system_method
>     end
> 
> Do you see where I'm going? I propose a special
> name "prior" that will automatically refer to the 
> prior definition of any method that is being replaced.
> No aliases will be necessary.
> 
>     def system_method
>       if today == Sunday
>         # Do some stuff...
>       end
>       prior
>     end
> 
> What do you think?
> 
> Hal Fulton