the monopoly of classes
ziakjan at host.sk
Wed May 28 14:00:21 UTC 2003
ok, lets see who wins this little biological war:
On 23 May 2003 15:04:02 +0200, Cees de Groot wrote
> On Fri, 2003-05-23 at 12:23, jan ziak wrote:
> > you are completely wrong in conjunction with the "inefficiency" of
> > code i think. the recurrence of dna sequences in different individuals
> > its sense: it allows those individuals to communicate !!! it's not
> > inefficiency, it's natures magic behind that and the, according to your
> > reaction, "waste" has it's logic.
> Now, this is complete and utter nonsense and totally ignores what I
> Please go off and count the number of copies of DNA you have (at
> least that'll keep you quiet for the next aeon or two ;-)). That's
> what you get with a totally classless system - a gross waste of resources.
i thought that you were saying that you disagree with the fact that the same
dna sequence is present in all cells of your body. now, it seems to me that
it was not your aim to note this kind of "waste" but this one: dna consists
of nucleotides which are not being used at all, they are "waste in your
> There's nothing 'magical' about nature. It's an imperfect system,
> created by evolution, and it shows.
why do you think that squeak is better then nature ? let's imagine that
squeak image is a dna sequence (that is, let's imagine that the content of
squeak's object memory is dna sequence). the sequence is composed from, as
opposed to molecules in biology, bits. so we have this mapping:
object memory <=> chromosome
bit <=> nucleotide
just as dna is a linear sequence of nucleotides, object memory is a linear
sequence of bits (or bytes, if you like). so your objection was that nature
is imperfect, while human-created (= squeak's object memory here) is better.
however, the basic FACT about the object memory is that some bytes in it are
used more often then others. that is, just like in a dna sequence where some
nucleotides are used more often then others. in squeak, some bytes in the
object memory are not used at all (for example because the byte-code of the
method they are part of is updated). from this analogy, i draw the conclusion
that squeak's image is not perfect, it contains some kind of burden. the
situation in squeak is analogical to the situation in the dna of living
organisms (... now it's your turn to show that this is not so, otherwise you
will loose the war). so you cannot argument that a system with classes is
better than a system without them or than nature...look what the squeak
community has created: a "squeak-chromosome" which has the (imperfect)
properties of a biological cell chromosome.
now, let's make another analogy: let us liken the squeak running on my
machine to a biological cell. the squeak running on your machine is another
cell then. other squeakers run squeak on their machines also ... so we have a
lot of squeak-cells in the world. the behavior of those cells is, as defined
above, defined by a chromosome (squeak-chromosome) - the squeak-chromosome
(together with the environment it is situated in) is responsible for the
behavior of mine, yours and other squeak-cells.
the squeak-cells in the world communicate between themselves. the
communication is done in various ways: by change sets imports, by loading
projects, by copying an example source code from a squeak tutorial, etc. so,
we can say we have cells which communicate between themselves. however, just
like in nature, the chromosome which defines the behavior of each of the
squeak-cells (chromosome = the object memory content, aka squeak-chromosome
here) is merely identical - each two squeak-cells have very similar
however, the similarity of squeak-cells is FULLY RATIONAL: it allows them to
communicate (that is, to interpret incoming data in the same way and as
to partly conclude:
1. the result of having a system with classes does not automatically
mean "better then created by nature"
2. cells are able to communicate because they have (something) in common
(i mean: a great number of cells, not just two...)
3. cell's behavior is coded in its chromosomes => dna of several cells
must be to some extent identical if they want to communicate
> > the reason that you cannot communicate with an ape is that the genetic
> > code which decribes the ape is DIFFERENT from the genetic code of
> > you body.
> Oh, and when you are done counting your cells, please count the
> number of genes you have in common with an ape, and the number of
> genes you don't have in common. I think you're in for a surprise.
i could have used an example with a bee, or a bird, rather than with ape.
there is a problem with apes because one can make an objection that a human
outgrowed in a group of apes could understand them - this means that the
genome of a human and of an ape are compatible.
but replace the "ape" with "bee" or "bird" in my old text above. we can say
that the communication between a human and a bee will not be possible because
of the DIFFERENCE in genetic code. (well, ok, one can say that there is some
sort of communication between a man and a bee possible - instead of this sort
of communication, i mean a communication where the bee will grasp what i mean
and i will grasp what the bee means)
ok, me and an ape have a lot of common genes. it is above 99%. i watched a
document on a tv and they said that a banana has 50% of genes in common with
me. i want to make an objection against the "count the number of genes you
have in common with XXX" procedure. this will not help because dna, although
it is a LINEAR sequence of nucleotides, the relationship between nucleotides
(and genes) is NONLINEAR. so what do i get from the fact that i have 99% of
genes in common with an ape: nothing. because the relationships among genes
are not linear, i am unable to predict what will happen when i remove or add
one gene. i would like to recommend you to think in connectionism-like terms
when comparing two genetic codes.
the analogy of biological cell chromosome and squeak-chromosome will help in
this case also: just ask youself what will happen when you randomly change a
randomly chosen byte-code in squeak's image. my answer to this question is:
the outcome is not predictable.
> > replication of code physically throughout your
> > body, of *exactly the same code* throughout the bodies of countless other
> > living things has its sense, it's fully rational and meaningful. (as
> > said: "god does not play dice").
> > (note: don't you want to read 'A Mathematical Theory of Communication' by
> > Claude E. Shannon ? i think it would help you to take the same view as i
> > have).
> Sorry, I don't want to take your view - if only because I don't
> follow you.
then just try it...for fun
> Let me try again - I hope you can come up with more nonsensical gems
> like quoting Einstein on quantum mechanics (which, incidentally,
> probably says more about Einstein's lack of understanding - willful
> or by some perceptual blindness - of Heisenberg's uncertainty principle
> than about quantum mechanics) in a discussion on information stored
> on biological carries.
> Because your cells form a classless system, you have *exactly* the same
> information copied something like a billion times throughout your body.
> And every other living thing has copies of often the same
> information, copied as many times as they have cells. Now, I don't
> know how many copies of DNA float around on planet Earth (it's less
> than a Googol, but huge), but it strikes me as a gross efficiency.
> For starters, try to debug the code and then play an update to all
> copies ;-).
it is not true that because my cells form a classless system, i have
*exactly* the same information copied something like abillion times
throughout my body. anyway, how do you know that there cannot be something
like "class" defined in the dna - perhaps there are some classes in it. as
dna is not decoded yet (it has been only scanned) we do not know whether my
genome is classless.
> Now, why is this? Two reasons: the need for local access of the
> information (in each cell - and I'm not starting about the copies inside
> your ribozomes in each of your cells), and the lack of reflective
> capabilities in the system called 'evolution'. Evolution cannot step
> back and rethink a certain design (if we're into quoting books, I
> hope you've read Dawkins).
why do you think that you can step back and rethink a certain design -
perhaps the nature is just cheating you to fulfill it's own selfish needs.
> Well, except for performance reasons (I have a replica of lots of
> code on each of the machines I run - it's called 'the operating
> system' and it wastes lots of diskspace and causes lots of
> management headaches, but it is faster), I don't see why we should
> attempt to mimick a system that is admirable in its results, but
> quite imperfect by design.
yes, the performance reason is ok, i agree - but it is not the only reason.
hmm, you admire the results of natural evolution but you consider those
solutions to be imperfect - why don't you just exchange the word "imperfect"
by "quite perfect" and take a new fresh viewpoint of the problem.
> Neither did the people who built Smalltalk, that's why they *could*
> decide that information could be stored 'off-site' (outside the
> object) and they could reflect on a better design.
as i said above, i think squeakers have NOT created a system which is much
efficient than the one created by biological evolution. they have the same
whatever you ever say, you cannot cheat evolution - you work for it...
> Anyway, except for bringing the whole mailing list off-topic, what do
> you want to say? This is about Squeak development - do you have anything
> concrete in the space of 'problems with class systems' or 'a proposal
> for a classless Squeak'?
More information about the Squeak-dev