"theory vs practice" ceases power

Dear functional programing comrades,

Among the community of automatons of the IT industry, there is a
popular quote about “theory vs practice” that goes something along the
lines of “in theory this, but in practice that”, which is often quoted
by automatons to slight at computer science principles or
practice. (especially by perl or unix advocates)

i’m posting the following in hope that “theory vs practice” can cease
its misleading power. I seek your support in the education of IT
automatons. Thanks.

from
http://www.xahlee.org/UnixResource_dir/writ/theory_practice.html

merlyn@stonehenge.com (Randal L. Schwartz) quoted:

The difference between theory and practice in theory is much less
than the difference between theory and practice in practice.

Popular quotes have attributes of equivocal interpretation and
theatrical display. When interpreted and pondered by the wise, it
lights up a wisdom, but dullards quote them equally, and delight in
their drama. (the latter happens a lot in Perl and unix communities.)

From American Heritage Dictionary:
theory n. pl. theories

  1. a. Systematically organized knowledge applicable in a relatively
    wide variety of circumstances, especially a system of assumptions,
    accepted principles, and rules of procedure devised to analyze,
    predict, or otherwise explain the nature or behavior of a specified
    set of phenomena. b. Such knowledge or such a system. 2. Abstract
    reasoning; speculation. 3. A belief that guides action or assists
    comprehension or judgment: rose early, on the theory that morning
    efforts are best; the modern architectural theory that less is
    more. 4. An assumption based on limited information or knowledge; a
    conjecture.

The word ‘theory’, in practice, has more meanings than in theory.

For example, in the above usage, ‘theory’ is used twice. In the first
instance, it is used for a purpose but not for its meaning. It is part
of a construction in a language that discuss the language itself. In
theory it does not come up, but in practice it does all the time. In
practice, we can say that the first instance of usage of the word
‘theory’ has no meaning given the context. In the second appearance of
the word, it has myriad of interpretations due to the construction of
the phrase.

People may mean: “The word ‘theory’, in practice, has more meanings
than people would think.” Here the word is thus used conveniently to
stand for “mob’s knowledge”.

From a logical linguist’s mouth, the intent might be: “The word
‘theory’, outside academia, acquire more meanings and purposes than we
require in linguistics.” The sensibility of such semantic content is
demonstrated in the previous paragraph.

People may say: “in theory, tomorrow’ll rain.” They really mean “the
broadcast station lady said that tomorrow will rain.”

A detective might say, “in theory, that guy is the murderer.”. He
really means: “according to my investigations, it is highly probably
that that guy is the murderer.”. (dictionary definition #4.)

In a strict sense, ‘theory’ means systematic and organized principles
derived by scientific means (dictionary definition #1.). In a more
strict mathematical sense, ‘theory’ is the body of theorems, and
theorem by definition describes practices correctly always, else it is
not a theorem. It is possible for a mathematical theorem to be
incorrect (we are humans, after all), but in practice to assume that
theorems can be incorrect is like assuming one might be hit by a
meteor tomorrow. Theoretically correct, but not sensible.

As you can see, the word ‘theory’ is subject to wanton abuses. In
fact, all English words are subject to extraneous purposes to yield
sentences or paragraphs that has a meaningful ambiguous
interpretation. (this is how poetry works, in theory.) All in all,
English is extremely malleable and ambiguous. The phrase “The word
‘theory’, in practice, has more meanings than in theory” is really
silly, except in really well-defined context. In our context, the
quote amounts to illustrating the stupidity of Perlers who don’t have
a solid background in logic or linguistics, but like to quote about
differences of theory vs. practice.

Larry Wall likes to mention how he had a linguistics background, and
how he utilized the (good) human qualities of English to create
Perl. To the Perl folks of beady eyes, they are sold a grand advance
in computer science, but to discerning eyes, it’s artful garbage.

Sorry i don’t have time to address the above points of Wall’s, but
this will definitely be another lesson for you folks down the road.

The perl folks with their beads of little eyes, cannot see beyond
imperative languages.

Xah
xah@xahlee.org
http://xahlee.org/PageTwo_dir/more.html

Seems to have spammed most of comp.lang.*

Didn’t turn up in comp.lang.tcl though, yet!

Scripsit ille aut illa »Xah Lee« xah@xahlee.org:

Dear functional programing comrades,

Hm… Ruby is a functional programming language? OK, you CAN do functional
programming in Ruby, but… well, I now see, C++ is even LESS functional
than Ruby. Please also crosspost to a Z80 assembly newsgroup, a Forth
newsgroup and a Turing Machine one.

Among the community of automatons of the IT industry, there is a
popular quote about “theory vs practice” that goes something along the
lines of “in theory this, but in practice that”,

One? A LOT OF THEM!

which is often quoted
by automatons to slight at computer science principles or
practice. (especially by perl or unix advocates)

What has that to do with Perl?

My chemistry teacher liked to use the phrase “das ist praktisch
theoretisch” - “pracitcally, that’s theoretic”. And he probably has
never seen Perl or UNIX at all. He hadn’t used computers at all for
his teaching.

The word ‘theory’, in practice, has more meanings than in theory.

IOW: In common use, “theory” has more meanings than you find in the
dictionary / than are linguistically “correct” / than one might at
first think.

It is possible for a mathematical theorem to be
incorrect (we are humans, after all),

Then it’s not a theorem any more, by definition. If someone would have
found a counterexample of Fermat’s Last Theorem, it couldn’t be called
that any more. Before Wiles’ proof, I liked “Fermat’s Conjecture”
much better because it wasn’t a theorem yet: there was no available proof.

A theorem is a conclusion of the axioms. It may use other theorems as
“shortcuts”, but of course not in a cyclical manner.

As you can see, the word ‘theory’ is subject to wanton abuses. In
fact, all English words
^^^^^^^
Why? German, Japanese, Greek words aren’t abused at all?

are subject to extraneous purposes to yield
sentences or paragraphs that has a meaningful ambiguous
interpretation. (this is how poetry works, in theory.)
[…]
In our context, the
quote amounts to illustrating the stupidity of Perlers who don’t have
a solid background in logic or linguistics, but like to quote about
differences of theory vs. practice.

So because one Perler said such a thing, you conclude all of them
are stupid? Go away and take your overgeneralizations with you.

Larry Wall likes to mention how he had a linguistics background, and
how he utilized the (good) human qualities of English to create
Perl.

Haha… I cannot see that in Perl. Just because it uses some English
words, it shows linguistics background? Did Larry Wall invent SQL
or COBOL? ducks

BTW, I never managed to “read” a Perl program to someone else. I just
don’t know how to call all those characters without confusing people.
“$i = $i + 1” could be read as “scalar i becomes scalar i plus one”, but
how to read “$foo{$bar . $baz} = [ $bar[$foo + $baz], %foo, @bar ];”?

Or Microsoft’s translated Visual Basic for Applications (included in
Excel 5):

Dim i Als Ganz
Dim s Als ZnF
Für i = 1 Bis 17 Schritt 2
’ …
Nächste i

Well, that REALLY shows someone at Microsoft had background in
linguistics. ^^

Was there a Japanese version of that? Must be funny… intermixing
Japanese BASIC keywords with English class and object names.

Hm… the dot notation to access instance variables (VB also had it),
could one use “no” for that? Would look even more funny to do that
between two English words.

And what’s the official name of Ruby’s :: notation? In German I call it
“doppelter Doppelpunkt”, double colon - but sometimes I call it “Quadrat”
(square).

To the Perl folks of beady eyes, they are sold a grand advance
in computer science, but to discerning eyes, it’s artful garbage.

Sorry i don’t have time to address the above points of Wall’s, but
this will definitely be another lesson for you folks down the road.

Which ones? Larry Wall’s name was mentioned first one paragraph above.

The perl folks with their beads of little eyes, cannot see beyond
imperative languages.

What? You CAN even do lambda calculus in Perl.

Please don’t generalize that much.

···


#!/usr/bin/ruby – find the answer of Life, the Universe and Everything –
p proc{|f|f[lambda{|x|x+1}][0]}[proc{|o|proc{|m|proc{|a|m[m[a[o][o]][a[a[o
][o]][o]]][a[m[a[o][o]][a[o][a[o][o]]]][o]]}}}[lambda{|f|f}][proc{|f|proc{

g>proc{|x|f[g]}}}][proc{|f|proc{|g|proc{|h|proc{|x|f[h][g[h]]}}}}]]

That’s because they’re a bunch of imperative running-dogs!

martin

···

Peter Hickman peter@semantico.com wrote:

Seems to have spammed most of comp.lang.*

Didn’t turn up in comp.lang.tcl though, yet!

Rudolf Polzer denshimeiru-sapmctacher@durchnull.ath.cx writes:

Scripsit ille aut illa »Xah Lee« xah@xahlee.org:

Larry Wall likes to mention how he had a linguistics background, and
how he utilized the (good) human qualities of English to create
Perl.

Haha… I cannot see that in Perl. Just because it uses some English
words, it shows linguistics background? Did Larry Wall invent SQL
or COBOL? ducks

Larry Wall made those claims in public speeches. See for example
http://www.wall.org/~larry/keynote/keynote.html
http://www.wall.org/~larry/onion/onion.html
The first one mentioned his linguistic background. The second one
mentioned borrowing qualities from human languages.

Whether he has successfully achieved what he said, you can have your
opinion. But be it recorded that he did say those things.