1. 2

  2. 3

    The eigen- prefix is used to describe something which is “the same” before and after a transformation. e.g. the eigenvector of a matrix is a vector which still points in the same direction after multiplying by the matrix (scaled by its eigenvalue). What exactly is the transformation going on here?

    1. 6

      eigen comes from Germanic languages such as German and Dutch where it means own, particular to, etc.

      Mijn eigen auto -> My own car.

      Mijn eigenwaarde/eigendunk -> My self-esteem

      So, the prefix eigen- does not imply a transformation. Though, I agree that it is confusing in CS to use this prefix, since non-native speakers immediately associate it with eigenvalues/vectors.

      1. 2

        The term “singleton class” that the article briefly mentions is actually Ruby’s official term for this concept. Ruby’s standard library defines the Object#singleton_class method; you can use .singleton_class in place of .eigenclass in all the article’s examples. Perhaps this potential confusion is the reason the Ruby team chose “singleton class” over “eigenclass”.

        1. 2

          Etymologically speaking, the “eigen-”-prefix was used by David Hilbert to describe that the value/vector is inherent to the thing. To confuse things a little, “eigen” is a pretty versatile word in german: https://www.dict.cc/?s=eigen

          Hilbert probably used in the sense of “possessive”, “inherent”, “in-built”. In that sense, which is not focused on the transformation, “eigenclass” is rather similar.

          (loosely taken and translated from: http://faql.de/etymologie.html#eigen)

          1. 2

            Thank you for your comment.

            Eigen means “own” in German. So “eigenclass” means “owned class” (as this anonymous class is owned by its defined class).