Linux-Advocacy Digest #706, Volume #29           Tue, 17 Oct 00 13:13:07 EDT

Contents:
  Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (Donal K. 
Fellows)
  Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (Donal K. 
Fellows)
  Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (Donal K. 
Fellows)
  Re: Is there a MS Word (or substitute) for Linux? (Matthias Warkus)
  Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (Richard)
  Re: Why is MS copying Sun??? ("Eric Gunnerson")
  Re: Is there a MS Word (or substitute) for Linux? (Christopher Browne)
  Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (Richard)
  Re: Why is MS copying Sun??? ("Aaron R. Kulkis")
  Re: Is there a MS Word (or substitute) for Linux? (Jan Schaumann)

----------------------------------------------------------------------------

From: [EMAIL PROTECTED] (Donal K. Fellows)
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: 17 Oct 2000 14:57:43 GMT

In article <[EMAIL PROTECTED]>, Richard  <[EMAIL PROTECTED]> wrote:
> "Donal K. Fellows" wrote:
>> Richard  <[EMAIL PROTECTED]> wrote:
>>> I don't believe classes should exist in the system at all. New
>>> objects should be created by copying prototypes.
>> 
>> That depends on your type-system and to what degree it is leveraged to
>> improve performance; if you can statically prove that all the objects
>> provided as a particular formal parameter will support a certain
>> method, you do not need to include a dynamic (run-time) check for the
>> existence of that method.  Removing these checks makes for a nice
>> speed gain, especially in tight loops.
> 
> What the fuck are you talking about?

The main reason why most people use classes.  Why the crude language?
It makes people more likely to place you in the class of people who
live in trailer parks, drinking Bud by the crate-load and calling each
other "Bubba"...

> Do you even know what *I'm* talking about?

If you were better able to express yourself, I might.  There are
times, though, when trying to pin you down is like stapling diarrhoea
to a wall.  We'd respect you more if we could identify you with some
actual person (as opposed to some random USENET jerk who knows how to
use a search engine) or, at the very least, an organization that isn't
a typical front for clueless slackwits.  Pointing to a few papers
you've (co-)authored would be excellent.

> Prototypes versus classes is independent of anything else, including
> static versus dynamic typing. Omega is a statically typed prototype-based
> language.

I've not heard of Omega before (it's the first language you've
mentioned in this whole thread that's completely new to me.)  How does
the typing work.  Can we have an explanation *without* handwaving
please.  A URL to a (publically visible) paper by the authors would do
fine (and would probably be better than anything you could come up
with!)  Is it making each object into a type too, and treating
derivation from a prototype object as also inducing a subtype
relation?  Does it support multiple inheritance (i.e. types which are
subtypes of unrelated types?)  How well does it scale (i.e. how well
does the language cope when the number of objects gets up into the
multi-million range?)  Is the typing computable at compile-time?
(FYI, I have used languages where the typing was not computable at
compile-time nor even necessarily fixed at run-time, but it is harder
to get very high levels of performance from them since optimising away
the type-checks is quite tough.  Whether this matters depends on the
application area.)

>>> But *if* classes have to exist (and they don't) then classes have to
>>> be objects and you create classes by sending messages to other class
>>> objects.
>>
>> You can do this in Java (well, if you substitute "call a method" for
>> "send a message", but that's just syntax) and many people take
>> advantage of this, since dynamic class creation is definitely fun...
> 
> No, it's not. Nobody on the Smalltalk side does this kind of crap (*).
> The only reason Java people do it is because Java doesn't have any
> BlockClosure class that lets them create lambdas at will so they have
> to fuck with anonymous classes instead.
> 
> A Java victim has to write:
>   new Function2Arg() {public Object valueWith_with (Object a, Object b) {

Why the stupidly long class and method names?  To give you a straw man
to knock over?

>   return (String) a + (String) b; }}

What astonishingly bad code.  But I don't feel like explaining why
right now.  I'd much rather watch you go into further paroxysms of
pointless fury.  Anyone bring any salted popcorn and marshmallows?

> where a Smalltalk user would write:
>   [:a :b | a,b]
> 
> and this is literal since the comma is the concatenation method in ST!

I think we are talking about completely different things.  You're
talking about classes without names, and I'm talking about classes
created completely dynamically at runtime (i.e. where the text that
defines the behaviour of the classes/objects is not known at the time
that the environment that those objects run in is created.)  If the
environment is to preserve its own integrity in any meaningful way[*],
the conversion of said program text into entities within the
environment is a highly privileged operation.  However, Java does
provide an object which you can invoke a method upon (passing in
appropriately formatted data) which will give you back a class (if it
likes it, of course.)

We don't seem to be generating much light right now.  So let's pick a
different area to lock our horns over.  Let's pick Distributed
Applications, and let's use CORBA as our underlying protocol (it has
mappings into both Java and Smalltalk, I gather.)  Post up a little
application that implements a few method calls using this, with object
A calling object B (looked up from a directory server) which then
calls back into A using a reference to itself that A passed to B.

Donal.
[* C++ doesn't.  This is one of the things wrong with C++ for large
   scale programming. ]
-- 
Donal K. Fellows    http://www.cs.man.ac.uk/~fellowsd/    [EMAIL PROTECTED]
-- OK, there is the MFC, but it only makes the chaos object orientated.
                                        -- Thomas Nellessen <[EMAIL PROTECTED]>

------------------------------

From: [EMAIL PROTECTED] (Donal K. Fellows)
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: 17 Oct 2000 15:20:24 GMT

In article <[EMAIL PROTECTED]>, Richard  <[EMAIL PROTECTED]> wrote:
> It has meaning, and I have articulated it, you just persist
> in denying it.
> 
> Object Orientation means:
>       1) everything's an object (where "object" is the normal sense
>               of the term and not some bizarre abstract sense like you
>               have been promoting)

The "dictionary definition" meaning?  <looks at webster's website>
You are referring to meaning 2 of the noun form?  I'll quote it here
to save everyone effort...

  2 : something mental or physical toward which thought, feeling, or
  action is directed <an object for study> <the object of my
  affection> <delicately carved art objects>

(The other meanings that they give are probably not useful.)

Is the entity which is not an object really an object?  I can conceive
of it, so by the dictionary definition it must be an object, and yet
it cannot be by definition.  This shows why objects in formal systems
need a more rigorous basis...  :^)

>       2) all actions are performed by sending messages to objects
> 
> Simple example: Assignment is not a message in Smalltalk so ST
> breaks OO that way.

Are individual messages objects?  Would that make each kind of message
that an object is prepared to receive into a class?  How many classes
and objects would that mean existed in a Smalltalk system?

And why does Smalltalk have assignment at all?  There are OO languages
that do not (e.g. UFO)...

> Control structures are not messages in C++ and Java and that's one
> of the many, many reasons why C++ and Java can't be called OO.

While I concur with the premise of that statement (that control
structures are not messages in C++ and Java) I do not agree that
inherently means that those languages are not OO.  But then, I do not
agree with your definition of OO.  Were you to use your definition but
replace OOPL with Object Programming Language (i.e. a language where
you are programming with objects) I might not object, but the
"oriented" to me means that the language is merely focussed on the use
of objects, and not that that is the only kind of entity which exists.

Donal.
-- 
Donal K. Fellows    http://www.cs.man.ac.uk/~fellowsd/    [EMAIL PROTECTED]
-- OK, there is the MFC, but it only makes the chaos object orientated.
                                        -- Thomas Nellessen <[EMAIL PROTECTED]>

------------------------------

From: [EMAIL PROTECTED] (Donal K. Fellows)
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: 17 Oct 2000 15:33:27 GMT

In article <[EMAIL PROTECTED]>, Richard  <[EMAIL PROTECTED]> wrote:
> There is no ambiguity in Smalltalk. All > 1 billion instances of
> SmallInteger are unique already existing objects in the system.

So if one object contains an instance of 42 and another object
contains an instance of 42, are they the same instance?  How does it
implement this?  If I have a variable that can hold any object and I
put a 42 in it, how does it know that this is distinct from, say, a
linked list?  If, at the machine level, it writes a word, then you
have the problem of what happens when the word looks like a reference
to another object.  If it writes more than that, then you have the
problem of the inefficiency associated with keeping that book-keeping
information around, which if you've got a billion different numbers
can be quite an overhead (and you can quite easily get this sort of
quantity of information when performing image processing, for
example.)

> And I can add new methods to SmallInteger at will. Can you say the
> same for the 'int' class?

Why?  And what's to stop author A's frobnicate method/message from
interfering with author B's frobnicate?  Normal people handle this
problem by forbidding redeclaration of classes.  Failure to restrict
this sort of behaviour causes problems in software engineering terms.
(Or are you going to claim that it doesn't because we're all happy
Smalltalk users who wouldn't ever do something like this!?)

Donal.
-- 
Donal K. Fellows    http://www.cs.man.ac.uk/~fellowsd/    [EMAIL PROTECTED]
-- OK, there is the MFC, but it only makes the chaos object orientated.
                                        -- Thomas Nellessen <[EMAIL PROTECTED]>

------------------------------

From: [EMAIL PROTECTED] (Matthias Warkus)
Crossposted-To: comp.os.linux.misc
Subject: Re: Is there a MS Word (or substitute) for Linux?
Date: Tue, 17 Oct 2000 17:07:09 +0200
Reply-To: [EMAIL PROTECTED]

It was the Tue, 17 Oct 2000 03:51:56 GMT...
...and John Hasler <[EMAIL PROTECTED]> wrote:
> Jerry L Kreps writes:
> > I wish this real name policy was universal!
> 
> How do you propose to authenticate those "real names"?

You don't. You just make people use a name that looks real. People who
won't accept changing a silly name into a realistic name even if it's
just a pseudonym are obviously anti-Usenet (for lack of a suitable
parallelism to "antisocial") and get plonked.

Works surprisingly well.

mawa
-- 
[...] Natürlich hatten sie dort keinen Wal. Ein Wal wäre viel zu groß
gewesen, und selbst wenn man das Gebäude abgerissen und in ein
einziges großes Wasserbecken verwandelt hätte, hätte man keinen halten
können. [...]                     -- Murakami Haruki, Wilde Schafsjagd

------------------------------

From: Richard <[EMAIL PROTECTED]>
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: Tue, 17 Oct 2000 16:20:14 GMT

"Donal K. Fellows" wrote:
> In article <[EMAIL PROTECTED]>, Richard  <[EMAIL PROTECTED]> wrote:
> > Object Orientation means:
> >       1) everything's an object (where "object" is the normal sense
> >               of the term and not some bizarre abstract sense like you
> >               have been promoting)
>
> The "dictionary definition" meaning?  <looks at webster's website>

No. The USUAL sense.

> You are referring to meaning 2 of the noun form?  I'll quote it here
> to save everyone effort...
> 
>   2 : something mental or physical toward which thought, feeling, or
>   action is directed <an object for study> <the object of my
>   affection> <delicately carved art objects>
> 
> (The other meanings that they give are probably not useful.)

The one you gave wasn't useful either. I find it incredible that anyone
could think a dictionary is any kind of authority on the meaning of a
word. If you don't *know* then you look it up, but using a dictionary
in a debate is the height of idiocy.

If you want to know what 'object' means formally then ask a philosopher.
They've only been thinking about the question for two millenia.

> Is the entity which is not an object really an object?  I can conceive
> of it, so by the dictionary definition it must be an object, and yet
> it cannot be by definition.  This shows why objects in formal systems
> need a more rigorous basis...  :^)

> Are individual messages objects?  Would that make each kind of message
> that an object is prepared to receive into a class?  How many classes
> and objects would that mean existed in a Smalltalk system?

For Smalltalk, respectively;
1) only if they fail (at which point they're converted into objects),
2) no (there's already a class called Message (or MessageContext whatever),
3) hundreds, if not thousands (that's what a good library has).

> And why does Smalltalk have assignment at all?  There are OO languages
> that do not (e.g. UFO)...

Because Smalltalk doesn't attempt to merge OO and functional concepts.

> > Control structures are not messages in C++ and Java and that's one
> > of the many, many reasons why C++ and Java can't be called OO.
> 
> While I concur with the premise of that statement (that control
> structures are not messages in C++ and Java) I do not agree that
> inherently means that those languages are not OO.  But then, I do not

It contributes to C++ and Java not being OO. Calling a language OO is
a spectrum, not a black and white thing. C++ falls far enough away from
perfection that it is "not at all" OO. If Java qualifies at all then
it's only barely. I set the cutoff point high enough that Java does not
qualify and if people don't set the cutoff point as high as I do then
that's only because 1) they have a vested interest in Java/C++ being
considered adequate, 2) they are inbred yokels who know nothing more
than what they were raised on and have never had any intercourse with
anyone other than their siblings (other X programmers), first cousins
(any language in the same paradigm) and parents (deprecated languages).

The popularity of C++ is the result of years and years of inbreeding.

> agree with your definition of OO.  Were you to use your definition but
> replace OOPL with Object Programming Language (i.e. a language where
> you are programming with objects) I might not object, but the
> "oriented" to me means that the language is merely focussed on the use
> of objects, and not that that is the only kind of entity which exists.

Well, you are wrong. That is not what the Oriented in OO means. What
it means is that the language helps users of the language think in an
OO manner and write in an OO manner. C++ doesn't help, it undermines.

------------------------------

From: "Eric Gunnerson" <[EMAIL PROTECTED]>
Crossposted-To: comp.os.ms-windows.nt.advocacy,comp.lang.java.advocacy
Subject: Re: Why is MS copying Sun???
Date: Tue, 17 Oct 2000 09:33:55 -0700

"Mike Byrns" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
>
>
> Darin Johnson wrote:
>
> > Mike Byrns <[EMAIL PROTECTED]> writes:
> >
> > > In fact, Gallup has shown that most Americans are against the DoJ
> > > position by an overwhelming majority.  Reference:
> >
> > Well, if US law was based on majority rule, you might have a point.
>
> It is.  This is a democracy.  Read the Constitution.

No, the US is a representative republic.

> > But it's not, and the constitution and laws of the US work to protect
> > the minority from the tyranny of the majority.
>
> Really?  I thought it's aim was to represent the majority through
representation.

No. It's aim was to allow the people to run things through representatives,
without all the excesses that come with majority rule.

That's, like, the whole point of the Bill of Rights, after all - to protect
the minority.




------------------------------

From: [EMAIL PROTECTED] (Christopher Browne)
Crossposted-To: comp.os.linux.misc
Subject: Re: Is there a MS Word (or substitute) for Linux?
Reply-To: [EMAIL PROTECTED]
Date: Tue, 17 Oct 2000 16:39:10 GMT

In our last episode (Tue, 17 Oct 2000 08:41:30 -0000),
the artist formerly known as [EMAIL PROTECTED] said:
>On Mon, 16 Oct 2000 15:15:50 +0200, Matthias Warkus <[EMAIL PROTECTED]> wrote:
>>It was the Sun, 15 Oct 2000 22:47:56 GMT...
>>...and [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>>> Pretty good don't cut it.
>>> 
>>> It sucks and is even more bloated than MSOffice.
>>
>>Define "it sucks". Define "bloated".
>>
>>(I don't use office suites at all, BTW, I don't cultivate any
>>irrational sympathies towards any such product.)

>I object to the very notion of an office suite. End users should be
>free to pick and choose the components they wish to use. Such
>components should interoperate freely.
>
> This is the promise of things like OLE that goes unfullfilled.

It was _never_ the promise of OLE; OLE was Microsoft's response to
OpenDoc, and was quite clearly intended to result in the elimination
of the latter.

And as for OpenDoc, while this was indeed an explicit part of its
intent, I'm not sure that it _only_ failed because of Microsoft's
opposition.  

Indications are that it was difficult to develop for, so that almost
nobody would be developing those "interoperable components," which
would combine with them being likely to be buggy and insufficiently
specified to prove out the promise...
-- 
(concatenate 'string "aa454" "@" "freenet.carleton.ca")
<http://www.hex.net/~cbbrowne/compound.html>
if (argc > 1 && strcmp(argv[1], "-advice") == 0) {
  printf("Don't Panic!\n");
  exit(42);
}
(Arnold Robbins in the LJ of February '95, describing RCS)

------------------------------

From: Richard <[EMAIL PROTECTED]>
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: Tue, 17 Oct 2000 16:46:46 GMT

"Donal K. Fellows" wrote:
> In article <[EMAIL PROTECTED]>, Richard  <[EMAIL PROTECTED]> wrote:
> > There is no ambiguity in Smalltalk. All > 1 billion instances of
> > SmallInteger are unique already existing objects in the system.
> 
> So if one object contains an instance of 42 and another object
> contains an instance of 42, are they the same instance?

Yes.

>  How does it
> implement this?

The ObjectMemory (a Persistent Otore that stores all objects permanently)
encodes the class and value of small integers into their objectPointers.
Since objectPointers have to be word-aligned, that leaves a whole bunch
of objectPointer values that can't be valid pointers. These are the small
integers. There is no overlap between the byte representation of small
integers and that of object pointers.

>  If I have a variable that can hold any object and I
> put a 42 in it, how does it know that this is distinct from, say, a

Objects are just objectPointers to an object header. The object header
contains the class (ie, a pointer to the class) of the object.

> linked list?  If, at the machine level, it writes a word, then you
> have the problem of what happens when the word looks like a reference
> to another object.  If it writes more than that, then you have the
> problem of the inefficiency associated with keeping that book-keeping
> information around, which if you've got a billion different numbers
> can be quite an overhead (and you can quite easily get this sort of
> quantity of information when performing image processing, for
> example.)

As you can see, this isn't some kind of new problem that nobody has
ever thought of before. It's a very, very old problem and there is a
standard solution. In fact, I'm certain that the very first Smalltalk
used the same encoding that modern Smalltalks do.

> > And I can add new methods to SmallInteger at will. Can you say the
> > same for the 'int' class?
>
> Why?

Why not?

No, wait, that's not a proper answer.

/Because/.

>  And what's to stop author A's frobnicate method/message from
> interfering with author B's frobnicate?

Because no two people ever create a frobnicate method? Because the
method names have to be descriptive and if two methods have the same
name then they *must* do something similar (or else one or both of
the authors fucked up)? Because vendors cooperate with each other on
the extensions they make to Smalltalk? Because the base Smalltalk
class library is powerful enough that people very rarely need to
extend it?

>  Normal people handle this
> problem by forbidding redeclaration of classes.  Failure to restrict
> this sort of behaviour causes problems in software engineering terms.

No it doesn't. Restricting name collisions is only a band-aid to
pretty up the symptom of a very ugly and brutal disease, it's not
a cure by any means.

Anyways, it hardly matters since for some unfathomable reason, VW
Smalltalk has added namespaces to their newest release. It's only
useful for the integration of very *VERY* large systems. And note
how ST users have gotten along fine without namespaces for two
decades, and they *aren't* rushing to VW 5.1i for its namespaces.

> (Or are you going to claim that it doesn't because we're all happy
> Smalltalk users who wouldn't ever do something like this!?)

Pretty much.

------------------------------

From: "Aaron R. Kulkis" <[EMAIL PROTECTED]>
Crossposted-To: comp.os.ms-windows.nt.advocacy,comp.lang.java.advocacy
Subject: Re: Why is MS copying Sun???
Date: Tue, 17 Oct 2000 12:48:18 -0400

Simon Cooke wrote:
> 
> "T. Max Devlin" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]...
> > Said Simon Cooke in comp.os.linux.advocacy;
> > >"Aaron R. Kulkis" <[EMAIL PROTECTED]> wrote in message
> > >news:[EMAIL PROTECTED]...
> > >> "T. Max Devlin" wrote:
> > >> > Weevil.  He is either dishonest, or just not very bright.
> > >> >
> > >>
> > >> Simon is Dishonest.
> >
> > I figured, but thought I'd give him the benefit of the doubt.
> >
> > >And the two of you are raving homophobic criminals, with a history of
> > >wife-beating, and a sideorder of shit for brains.
> >
> > Wow.  I guess Aaron struck a nerve.  So much for the benefit of the
> > doubt.
> 
> So let's see... you call me dishonest, and because that "strikes a nerve",


Wrong... .*I* called you dishonest.

Either that, or deliberatly uninformed (which is the same thing).


> you're *RIGHT*?
> 
> That's the biggest load of bullshit I've ever heard in my life.
> 
> Simon


-- 
Aaron R. Kulkis
Unix Systems Engineer
ICQ # 3056642

http://directedfire.com/greatgungiveaway/directedfire.referrer.fcgi?2632


H: "Having found not one single carbon monoxide leak on the entire
    premises, it is my belief, and Willard concurs, that the reason
    you folks feel listless and disoriented is simply because
    you are lazy, stupid people"

I: Loren Petrich's 2-week stubborn refusal to respond to the
   challenge to describe even one philosophical difference
   between himself and the communists demonstrates that, in fact,
   Loren Petrich is a COMMUNIST ***hole

J: Other knee_jerk reactionaries: billh, david casey, redc1c4,
   The retarded sisters: Raunchy (rauni) and Anencephielle (Enielle),
   also known as old hags who've hit the wall....

A:  The wise man is mocked by fools.

B: Jet Silverman plays the fool and spews out nonsense as a
   method of sidetracking discussions which are headed in a
   direction that she doesn't like.
 
C: Jet Silverman claims to have killfiled me.

D: Jet Silverman now follows me from newgroup to newsgroup
   ...despite (D) above.

E: Jet is not worthy of the time to compose a response until
   her behavior improves.

F: Unit_4's "Kook hunt" reminds me of "Jimmy Baker's" harangues against
   adultery while concurrently committing adultery with Tammy Hahn.

G:  Knackos...you're a retard.

------------------------------

From: [EMAIL PROTECTED] (Jan Schaumann)
Crossposted-To: comp.os.linux.misc
Subject: Re: Is there a MS Word (or substitute) for Linux?
Date: Tue, 17 Oct 2000 16:45:54 GMT

Matthias Warkus wrote:
<snip>

>In the de.* hierarchy, we tell everyone who doesn't post under their
>realname to fuck off, which is a useful policy IMO.

I never really liked that policy. I accept it in de.*, where it is standard,
but I still reject killfiling people just because they do not want to give
their (a) real name.

Real (looking) name or not - you can always tell who's a troll.

However, I *do* agree that it is curtesey (sp?) to give your correct name.

Cheers,
-Jan

-- 
Jan Schaumann <http://www.netmeister.org>

Please add smileys where appropriate.

------------------------------


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [EMAIL PROTECTED]

You can send mail to the entire list (and comp.os.linux.advocacy) via:

    Internet: [EMAIL PROTECTED]

Linux may be obtained via one of these FTP sites:
    ftp.funet.fi                                pub/Linux
    tsx-11.mit.edu                              pub/linux
    sunsite.unc.edu                             pub/Linux

End of Linux-Advocacy Digest
******************************

Reply via email to