Re: Meaning of Orthogonality
From: Anno Siegel (anno4000_at_lublin.zrz.tu-berlin.de)
Date: 05/20/04
- Next message: Ben Morrow: "Re: validating IP addresses"
- Previous message: jacek: "Re: problem with references"
- In reply to: Greg Miller: "Re: Meaning of Orthogonality"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 20 May 2004 21:31:31 GMT
Greg Miller <gmiller@NOTforSPAM.gregmiller.net> wrote in comp.lang.perl.misc:
> On Wed, 19 May 2004 08:43:13 -0000, Edward Wijaya
> <ewijaya@singnet.com.sg> wrote:
>
> >Perl is said to be an "orthogonal" programming language.
> >What does it mean?
[...]
> I'm not sure how this word came to be associated with
> programming languages. The mathematical definition says two things
> are orthogonal if they are at 90 degrees to each other. If you try to
> adapt that to programming language structures, you'd think an
> orthogonal language is one that treats everything differently than
> everything else. But in the programming languages context, it means
> to treat everything the same.
The mathematical sense of "orthogonal" from which the usage in computer
languages derives isn't so much "90 degrees", but the concept of
orthogonal coordinates (or matrices), where the angles between any two
axes are 90 degrees. In such a coordinate system you can choose x, y,
and z independently. In an oblique system, the coordinates depend on
one another.
That idea carries over nicely to the usage in computer languages, where
you get to choose (say) an operator and the type of operands independently,
whereas in less orthogonal languages the choice of one may determine the
choices for the others. In mathematics, at least the dependency is linear,
in computer languages it can be arbitrary.
> Now that I've said that, I've noticed the mathematical
> definition of orthogonal, and the programming language definition are
> orthogonal to each other! Maybe it was a joke someone made that got
> out of hand.
I think it's a good metaphor, taken as above.
Anno
- Next message: Ben Morrow: "Re: validating IP addresses"
- Previous message: jacek: "Re: problem with references"
- In reply to: Greg Miller: "Re: Meaning of Orthogonality"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|