ts <decoux / moulon.inra.fr> writes:

>>>>>> "R" == Raja S <raja / cs.indiana.edu> writes:

>R> Question: my original question on the order of the entries returned by
>R> #keys and #values remains.  

> It's best to wait  a response from matz, but actually #keys and #values
>return the entries in the same order (if you don't modify the hash).

Thanks.  I'll also await the official answer.

In the mean time two other questions for matz and others in the know:

1.  [should have asked this in the beginning]  why can't class methods be
    aliased?  The books says about #alias:

       creates a new name that refers to an existing method, operator,
       global variable, or regular expression backreference ($&, $', $', and
       $+). Local variables, instance variables, class variables, and
       constants may not be aliased. The parameters to alias may be names or
       symbols.

    Why the non-aliasability of local/instance vars etc?
    Why do class methods get treated differently from instance methods?

2. On an unrelated issue,  why is it Module#module_function instead of
   #module_method.  We are, after all, creating module methods from instance
   methods .

3. The book says (don't have book handy to cite a page# but its at the end of
   the section discussing Module functions and Module#module_function): 

     "The instance method and module method are two different methods: the
      method definition is copied by module_function, not aliased."

   I'm under the impression that aliasing also copies.  Why the implication
   otherwise?

Thanks,
Raja