[REBOL] Re: What is Mathematics?
From: jelinem1:nationwide at: 3-Jul-2001 13:58
Reading the first link now ("How do we tell truths that might hurt?").
Just got to the statement:
It is practically impossible to teach good programming to students that
have had prior exposure to BASIC: as potential programmers they are
mentally mutilated beyond the hope of regeneration
- Copyrighted by
Springer-Verlag New York. You must now read the article or I'll be held
<snicker> I'm mentally mutiliated! Do I get paid extra? Yes I know that
the majority of "serious" programmers have a very negative - even abrasive
- attitude about BASIC, but I'll admit to using it nonetheless. Not any
really current version of BASIC, mind you. I began programming in "baby
BASIC"... but I'm digressing.
Yes I trivialized the scope of mathematics to arithmetic. I stand
corrected on that point. And, yes, of all my required math courses in
college, algebra was by far my favorite. My last course came close,
Numerical Analysis, by which time I was a competant programmer enough
(should I admit with BASIC?) to finish my assignments with a program.
Anyway, thanks for the enlightenments and the links. I'm always open to
broaden my knowledge and understanding.
From: Joel Neely <[joel--neely--fedex--com]>@rebol.com on 07/03/2001 12:54 PM
Please respond to [rebol-list--rebol--com]
Sent by: [rebol-bounce--rebol--com]
Subject: [REBOL] What is Mathematics?
OK, I apologize for opening my mouth... ;-)
> Mathematics is included in programming to be sure, but I
> don't see Mathematics as a superset of programming...
> So, I do not see any reason to choose programming
> implementations based on mathematics (probably better
> stated as "numerics").
NO NO NO NO NO NO NO NO NO!
Arithmetic ("numerics") is the least interesting and most
trivial aspect of Mathematics. (And IMHO number-crunching
is the least interesting aspect of programming.)
As one example of the kind of relevant (non-arithmetic) math,
I'd highly recommend Carl's article in REBOL/Zine 1.2.
The process of transforming code from the original form
either (mode) [
data: find data "Active"
data: find data "Passive"
into the final
data: find data pick ["Active" "Passive"] mode
has been known in the Forth world (for at least 10 years) as
and more recently in the OO and extreme programming
worlds as "refactoring" by direct analogy with the kind of
algebraic process that allows one to transform
(a * b + c) - (d * b + c)
(a - d) * b
(I trust I needn't add the reminder that algebra is NOT about
arithmetic nor numbers, but about formal manipulations of
strings of symbols.)
As another example, the algebraic law that lets me refactor
if any [a <= b none? find p q not same? x y] ...
if all [a > b find p q same? x y]
is known as DeMorgan's law (about which more later). I can't
imagine programming without being able to perform such
transformations and having the logical underpinnings on which
> Just as "art" can be described in the terms of physics...
I know a number of folks in both the Artificial Intelligence
and Physics worlds who'd love to argue that point with you! ;-)
> > Logic values do have an implicit integer meaning, 0 false,
> > and 1 true. This is firmly accepted amongst electronics
> > world.
> Absolutely! This makes great sense in the world of
> electronics. But why, in the abstract world of logic, should
> this relation be valid?
Ever heard of George Boole (1815 1864), after whom Boolean
algebra is named? His work considerably predates electronics
(and TLTMNBM), and is rightly regarded as the foundation of
mathmatical (symbolic) logic. In conjunction with Boole,
another British mathematician, Augustus DeMorgan, formalized a
the principles now known as DeMorgan's laws. As the Encyclopedia
Britannica says: "A renascence of logical studies came about
almost entirely because of Boole and DeMorgan."
Boole used 1 for true and 0 for false, allowing such notation
(1 - x)
(1 - x)(1 - y)
(not x) and (not y)
The relation is far more valid in the abstract world of logic
than it is in the approximate world of electronic circuits
whose variable voltages must be interpreted as being "close
enough" to the values chosen to represent logical 1 or 0!
> ... This came from firm roots in BASIC as a first language...
I can't resist referring to
whenever BASIC -- or its successor, Visual SickBay -- is
mentioned (or at least thinking of it ;-)
Of course, since you made me think of EWD papers, I must also
refer you to
It's turtles all the way down!