Getting double semi as sequencer harvested.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
244 messages Options
1 ... 910111213
Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

Jason Johnson-5
What what does the rest of the group think about what happened?

The way I personally saw it was:  One person leans over to another one
and wispers in his ear "hey man, are you trolling with this or
something?" and the person smiles, walks over to CNN and repeats
everything the person said and gives their scathing rebuttal.

In my opinion, I don't see any grounds for it being an issue of "self
defense" because no threat was made, and no slander was done sinse it
was sent to the person in private.

I find it questional behavior.  If the person has been sending this
sort of thing over and over then I can see giving a warning of "hey,
if you send me another message I'm forwarding it to the mail list to
let others know what you're doing", but to do it instantly at the
first very minor offense (it's questionable in my mind if it was an
offense at all) seems quite over the top to me.

Ironically, such behavior is more likely to "bully" and scare people
away from talking to you in general, which is what ad hominem is all
about, no? :)

On 9/15/07, Peter William Lount <[hidden email]> wrote:

> Randal L. Schwartz wrote:
> >>>>>> "Peter" == Peter William Lount <[hidden email]> writes:
> >>>>>>
> >
> > Peter> People have the right to defend their person and this right even allows
> > Peter> them to make private communications public!
> >
> > Not in violation of federal law.  I don't care how you feel.  You don't get to
> > violate the law no matter how you "feel".
> >
> >
> Hi Mr. Schwartz,
>
> As you know good sir I believe you are mistaken. I was well within the
> rights of a citizen of Canada to defend one's person.
>
> I've moved on and I think the group has as well. Thank you good sir.
>
> All the best,
>
> Peter
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

Jason Shoemaker
In reply to this post by pwl


On 9/15/07, Peter William Lount <[hidden email]> wrote:
Randal L. Schwartz wrote:
>>>>>> "Peter" == Peter William Lount <[hidden email]> writes:

There are also other laws other than copyright to consider. In British
Columbia, where I am located, a party to a conversation may make it
public if it's in defense of their person as my posting clearly was. End
of story.

...

Also I didn't retaliate with any personal attack. I simply stated the
facts of what was said and asked the person to stop their attacks, which
seems to have occurred as the subsequent email-posting exchange shows.
Furthermore, out of a desire to have positive conversions subsequently
follow, I provided suggestions of how to ask appropriate questions
rather than initiate ad hominem attacks.

I suppose that you support ad hominem attacks upon the person even if
they are sent privately to attempt to influence, "bully" or "inflame"
someone's behavior in a negative way with false accusations?

How would you have handled it in a way that would positively influence
the person's initiating the ad hominem person attack?

All the best,

Peter William Lount
[hidden email]

How is telling someone in private that they are being trollish, an ad hominem?

How to handle this in a bad way? Let me think.
How about try and make them lose face publicly?  Expose their private email, and add some 'facts.'
Tell them they have to follow some of the laws of your home country.
Help teach them how to ask  'appropriate questions', so I don't have to do this to them again. :))
I create new code of conduct for the group. Don't talk about X. So nobody feels suppressed.
Oh, and of course, I'm defending your free speech rights. I published your private email, didn't I?
</irony>

Some of the things that jumped out to me.

Libel:  Any false or malicious written or printed statement that __publicly__ ridicules someone or damages their reputation.

So I'm thinking he isn't the one that damaged your reputation.



pwl
Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

pwl
To the group: Due to the nature of Jason Shoemaker's comments I must
reply putting this on the record. I apologize as I really do want to put
this to rest. Thank you.

----

Hi Jason Shoemaker,

Sigh. I really can't believe that you'd post what you posted good sir.
Unbelievable. You have opened yourself to possible liable action good
sir. Unbelievable. Please stop that forthwith. Thank you.

Please respond to this posting and thread privately per the request of
others in the group. Thank you.

Sigh.


Jason Shoemaker wrote:

>
>
> On 9/15/07, *Peter William Lount* <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Randal L. Schwartz wrote:
>     >>>>>> "Peter" == Peter William Lount <[hidden email]
>     <mailto:[hidden email]>> writes:
>
>     There are also other laws other than copyright to consider. In
>     British
>     Columbia, where I am located, a party to a conversation may make it
>     public if it's in defense of their person as my posting clearly
>     was. End
>     of story.
>
>
> ...
>
>     Also I didn't retaliate with any personal attack. I simply stated the
>     facts of what was said and asked the person to stop their attacks,
>     which
>     seems to have occurred as the subsequent email-posting exchange
>     shows.
>     Furthermore, out of a desire to have positive conversions subsequently
>     follow, I provided suggestions of how to ask appropriate questions
>     rather than initiate ad hominem attacks.
>
>     I suppose that you support ad hominem attacks upon the person even if
>     they are sent privately to attempt to influence, "bully" or "inflame"
>     someone's behavior in a negative way with false accusations?
>
>     How would you have handled it in a way that would positively
>     influence
>     the person's initiating the ad hominem person attack?
>
>     All the best,
>
>     Peter William Lount
>     [hidden email] <mailto:[hidden email]>
>
>
> How is telling someone in private that they are being trollish, an ad
> hominem?

Telling some one that they are being trollish is an ad hominem personal
attack under all circumstances. It's a dramatic negative statement about
the person, it's intended impact is to stifle discussion and free
speech. It is bullying plain and simply. Often the rest of the group
will then moderate the person's comments down or remove them from the
group. I felt personally attacked in this case. I felt bullied. It was
heightened by the fact that the person and I had a long standing
positive history spanning many years with a good cooperative feeling. To
be called a troll was deeply offensive to me.


>
> How to handle this in a bad way? Let me think.

I submit to you good sir that you are handling this very badly indeed.
As I will show your posting is highly incendiary and likely so on
purpose. I ask you to cease such negative comments in public.


> How about try and make them lose face publicly?

That wasn't my intention. My intention is to stop ad hominem personal
attacks cold before they continue. In my experience people who use ad
hominem personal attacks continue to do so unless it's addressed
immediately with the actual facts of the matter.

If a person who makes ad hominem attacks looses face in public that is a
consequence of their making ad hominem personal attacks. They need to
take responsibility for the fact that they made a personal attack and
deal with any consequences.

I hold no malice or ill will towards the person. I have said my peace,
the point was taken, he adapted, he moved on as indicated by no more
personal attacks in our dialog since, and as far as I'm concerned the
matter is settled. It's some of you who haven't moved on yet. Please
move on. Thank you.


> Expose their private email, and add some 'facts.'

Now your tone suggests that the facts were concocted. My statements of
the facts are entirely accurate.

When attacked you are permitted to reveal relevant private conversations
that you are a party too. That is the law.

Yes, I will expose people attacking me. I will expose when I'm bullied.
It's known as self defense. Spreading the word about it helps the
attacks to stop.


> Tell them they have to follow some of the laws of your home country.

Now you are distorting the situation good sir. If fact I assert that it
is very possible that you are deliberately distorting the facts of this
in an attempt to harm my reputation. I ask you to cease such nonsense.

I never said I that the law compelled me somehow to reveal what
happened. That's pure nonsense and you know it. I simply stated that
there are laws (in many countries) that allow one to defend oneself by
disclosing relevant private communications when one is a party to the
conversation.

So it's important to be careful who you personally attack for your
private communications may become public. It's also important to not
liable people in public sir. The best policy is to not attack people.


> Help teach them how to ask  'appropriate questions', so I don't have
> to do this to them again. :))

Yes, he assumed that because the example I'd written had a mistake in it
that I must therefor be a troll rather than simply pointing out the
mistake and asking me to clarify.

He made an insulting personal attack by calling me a troll. That was his
action. He is responsible for the consequences of attacking someone
personally. I'm not going to sit around and take personal attacks. I
will shout about it loud and clear. Personal attacks are unacceptable in
most areas of life. I freely shout it out.

Yes, it's loud. If you don't like that that is too bad. If others don't
like that it is too bad. Don't make personal attacks and you won't have
to deal with the consequences of them.

There is no substantial difference if the attack is private or public.
The person who is attacked is the one who feels the negative
consequences immediately. They are the one who feels suppressed! The
attacked is the one who is being bullied by the attacker. It is a very
unpleasant experience good sir. I will not stand it by being quiet. I
will speak up and attempt to stop the bullying in an appropriate
professional manner within the law and without making an ad hominem
attack upon their person in return. I never called him any names or said
anything about his person except for the facts of what he said to me.
That is being professional about the matter.


> I create new code of conduct for the group.

It's the code of conduct that society permits in many countries so it's
not a new code of conduct at all.

The most common situation it's seen in is in journalism when the
journalist reveals private communications or interviews where the
journalist was a party to the conversation or communication.

It's also used in cases of liable to defend oneself against people who
are attempting to defame a person.

It also happens when people are mugged in a back alley and then tell
others what happened to them, what was said, etc...

Besides, you are also assuming that he intended the communication to be
private which may or may not be the case. It wasn't marked so. It had
the same exact subject heading as the other messages. Often people hit
"reply" rather than "reply to all". People where doing that throughout
the particular thread in question - multiple times. That is a fact. If
he had really wanted it to be private he could easily have marked it so
in the subject and in the body of the message itself to clearly show his
intention.

However, in our society one doesn't have an expectation of privacy when
one makes ad hominem personal attacks upon someone even in private. Sorry.

> Don't talk about X.

***** Others have asked that this off topic discussion be taken
elsewhere, I'm simply attempting to respect those voices. *****

However, I will discuss this with as many of you as there are since it
is unacceptable to have ad hominem personal attacks in a technical
discussion. I'd prefer to put this to rest though. Please no more public
emails. Send them privately thank you.

I will also defend myself from statements that are untrue, liableous or
malicious. As I am compelled to do with your posting Jason Shoemaker.

In fact calling someone a troll is telling them that you don't want to
hear about X. That X is heretical and can't be talked about. That the
particular viewpoint about X is not allowed. Being called a troll is
insulting as well. It is often intended as an insult too. That is in
part why calling someone a troll is an ad hominem personal attack.

Saying that you were personally attacked by someone is in no way an
attempt to suppress anything except the personal attacks. It's that simple.

Calling someone a troll is simply unwise. Don't do it.

> So nobody feels suppressed.

How did you feel suppressed good sir? Are you not saying anything
relevant to the topic of this group, Squeak and Smalltalk, as a result?
I doubt you are suppressed in any way what so ever as is evident from
your posting.



Don't make ad hominem personal attacks, false statements, malicious
statements or liableous statements and you won't suffer the consequences
of your actions in that regard.



It isn't my intention to suppress anyone. My intention is to respond
appropriately and sternly with full resolve to all ad hominem personal
attacks with (1) the facts, (2) a request to have the person stop the
personal attacks and, (3) to offer alternatives for them to show that
there are ways to move forward without personal attacks. That is being
professional. That is a high standard of conduct that respects all
involved, and yes, even the person who made the ad hominem personal
attack in the first place.

The person in question continued onward with the discussion without
further personal attacks so it seems to me that no one was suppressed
good sir. All that was suppressed in that thread were personal ad
hominem attacks from what is evident. That is a good thing. Very good.

Now if we can keep this thread civil we'd be doing fine. Actually if we
can put this to rest we'll be doing better. Please put this to rest.
Thank you.

Since you weren't a party to that conversation how on earth are you
impacted? You're not! Unless you make a practice of attempting to
influence your arguments with ad hominem personal attacks. They yes, I
can see how one would be suppressed or might feel suppressed. That's a
good thing though that improves the quality of the discussion. Isn't it?
If you support the use of ad hominem personal attacks then I can see
that it's a bad thing.

It's simply wise to keep things professional.

> Oh, and of course, I'm defending your free speech rights. I published
> your private email, didn't I?

It's not in defense of free speech that gives one the right to publish a
private email. It's in defense of one's person that gives one the right
to publish relevant private conversations that one is a party to. It's a
crucially important distinction that the law provides in many
jurisdictions around the world. Why? The facts are important when one is
attacked, more important that any privacy or other issues.


> </irony>
>
> Some of the things that jumped out to me.
>
> Libel:  Any false or malicious written or printed statement that
> __publicly__ ridicules someone or damages their reputation.

Libel, that is what your posting is bordering on good sir since you sent
it to the wider group publicly written as it was. Clearly your
statements are false and misleading as regards to the facts of what
occurred. Clearly I can easily interpret them as malicious and liable.
Please stop that forthwith.


> So I'm thinking he isn't the one that damaged your reputation.

If people don't like someone standing up to bullies who use ad hominem
personal attacks as a tool in discussions then that's too bad. I am a
strident defender of a high quality of discussion without making ad
hominem personal attacks. I will defend any personal attacks by
informing the group that they occurred, ask the person to stop, and
offer suggestions for alternatives to using ad hominem personal attacks
as that is a professional approach, a socially accepted practice, a
legally sound strategy and it's also respectful to the person who made
the personal attack.

Clearly by now good sir it's clear that you posting is an attempt to
damage my reputation. I would ask you to cease from doing so further.

I clearly understand the meaning of the point you are attempting to make
however you proceed upon false premises as I've outlined above. If your
intent is malicious then it's you are that are open to liable. Conduct
yourself accordingly good sir.

Others in this group have asked that we take this off line. Please
respect their wishes. I am attempting to do so. In the future please
send your emails to me privately. Caution however, all ad hominem
personal attacks against me will be published at my discretion so just
don't go that way. I welcome all respectful conversations. I hope that
everyone is now done with this. If you are not yet done please send
private emails, thank you.

All the best,

Peter William Lount

cc. Legal Council.



pwl
Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

pwl
In reply to this post by Jason Johnson-5
Hi,

Jason Johnson wrote:
> What what does the rest of the group think about what happened?
>
> The way I personally saw it was:  One person leans over to another one
> and wispers in his ear "hey man, are you trolling with this or
> something?"

That is a distortion of the facts. Read what he said. He said that I was
a "troll". That is entirely different.

Had he said what you are suggesting I'd likely have simply said that he
was mistaken, and might even have done so to him privately.


> and the person smiles, walks over to CNN and repeats
> everything the person said and gives their scathing rebuttal.
>  

It is a factual rebuttal to their ad hominem personal attack. If I had
conducted a "scathing rebuttal" it wouldn't have been fit to show even
on CNN!


> In my opinion, I don't see any grounds for it being an issue of "self
> defense" because no threat was made, and no slander was done sinse it
> was sent to the person in private.
>
> I find it questional behavior.

Then it sounds like you support ad hominem attacks.


> If the person has been sending this
> sort of thing over and over then I can see giving a warning of "hey,
> if you send me another message I'm forwarding it to the mail list to
> let others know what you're doing", but to do it instantly at the
> first very minor offense (it's questionable in my mind if it was an
> offense at all) seems quite over the top to me.
>  

I have a zero tolerance to ad hominem attacks especially online. I shout
out that when I'm being bullied so that the bully will stop. If that
fails to work there are often other remedies.


> Ironically, such behavior is more likely to "bully" and scare people
> away from talking to you in general, which is what ad hominem is all
> about, no? :)
>  

Nonsense. If you don't use ad hominem personal attacks there is nothing
to fear. The record shows that.

Ad hominem personal attacks are simply inappropriate behavior in
technical groups and in most of life. They are simply unwise and rarely
justified (and in those rare cases only when they have factual basis
behind them).

Basically you are saying that one can't defend oneself from them giving
the bullies a pass. The person who did the ad hominem personal attack is
the one responsible for any consequences. The victim is guilty of
speaking up in your eyes. Dam the person attacked and give a pass to the
bully making ad hominem personal attacks.

Coming to the attackers defense would be appropriate IF I had called him
names, or misrepresented the facts. That isn't the case. I was
professional pointing out the personal attack, asking for it to stop
which he did as the record of our subsequent conversations show, and
offering suggestions on how to avoid ad hominem personal attacks.

Saying that one shouldn't defend against bullies is just plain wrong
leaving the person attacked without a means to defend themselves.
Society recognizes this and permits the exceptions to privacy that I've
indicated numerous times.

Your main objection seems to be what society allows. Your main objection
seems to be that someone can't defend themselves when attacked. Too bad.
I stand for the right of everyone to defend themselves when bullied and
when attacked personally with ad hominem attacks such as being called a
troll.

All the best,

Peter


Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

Michael Haupt-3
Dear all,

what about opening one or two new squeakfoundation.org mailing lists
devoted to the discussion of (a) rhetoric and (b) legal issues related
to personal rights?

Michael

Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

Joshua Gargus-2
And perhaps one for (c) sarcasm?

:-)
Josh

On Sep 16, 2007, at 2:29 PM, Michael Haupt wrote:

> Dear all,
>
> what about opening one or two new squeakfoundation.org mailing lists
> devoted to the discussion of (a) rhetoric and (b) legal issues related
> to personal rights?
>
> Michael
>


Reply | Threaded
Open this post in threaded view
|

New mailing list proposals

Bert Freudenberg
Nah, that belongs on-list.

- Bert -

On Sep 16, 2007, at 23:51 , Joshua Gargus wrote:

> And perhaps one for (c) sarcasm?
>
> :-)
> Josh
>
> On Sep 16, 2007, at 2:29 PM, Michael Haupt wrote:
>
>> Dear all,
>>
>> what about opening one or two new squeakfoundation.org mailing lists
>> devoted to the discussion of (a) rhetoric and (b) legal issues  
>> related
>> to personal rights?
>>
>> Michael
>>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: New mailing list proposals

Michael Haupt-3
...absolutely.

Michael

On 9/16/07, Bert Freudenberg <[hidden email]> wrote:

> Nah, that belongs on-list.
>
> - Bert -
>
> On Sep 16, 2007, at 23:51 , Joshua Gargus wrote:
>
> > And perhaps one for (c) sarcasm?
> >
> > :-)
> > Josh
> >
> > On Sep 16, 2007, at 2:29 PM, Michael Haupt wrote:
> >
> >> Dear all,
> >>
> >> what about opening one or two new squeakfoundation.org mailing lists
> >> devoted to the discussion of (a) rhetoric and (b) legal issues
> >> related
> >> to personal rights?
> >>
> >> Michael
> >>
> >
> >
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: New mailing list proposals

Igor Stasenko
In reply to this post by Bert Freudenberg
Ah, yes, and please open one, where we can discuss how to care to my pet.

On 17/09/2007, Bert Freudenberg <[hidden email]> wrote:

> Nah, that belongs on-list.
>
> - Bert -
>
> On Sep 16, 2007, at 23:51 , Joshua Gargus wrote:
>
> > And perhaps one for (c) sarcasm?
> >
> > :-)
> > Josh
> >
> > On Sep 16, 2007, at 2:29 PM, Michael Haupt wrote:
> >
> >> Dear all,
> >>
> >> what about opening one or two new squeakfoundation.org mailing lists
> >> devoted to the discussion of (a) rhetoric and (b) legal issues
> >> related
> >> to personal rights?
> >>
> >> Michael
> >>
> >
> >
>
>
>
>


--
Best regards,
Igor Stasenko AKA sig.

Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

tblanchard
In reply to this post by Joshua Gargus-2
I vote that one more post from either instigator on this thread  
results both parties being unsubscribed.

Squeak is a nice congenial place.  Flamage is not welcome, nor is  
retaliation for same - I don't care who started what.

End of thread.  (I can dream, can't I?)




On Sep 16, 2007, at 2:51 PM, Joshua Gargus wrote:

> And perhaps one for (c) sarcasm?
>
> :-)
> Josh
>
> On Sep 16, 2007, at 2:29 PM, Michael Haupt wrote:
>
>> Dear all,
>>
>> what about opening one or two new squeakfoundation.org mailing lists
>> devoted to the discussion of (a) rhetoric and (b) legal issues  
>> related
>> to personal rights?
>>
>> Michael
>>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: responding to ad hominem person attacks

ncalexan

On 16-Sep-07, at 3:57 PM, Todd Blanchard wrote:

> I vote that one more post from either instigator on this thread  
> results both parties being unsubscribed.

+1.

Nick

pwl
Reply | Threaded
Open this post in threaded view
|

Re: PRIVATE responding to ad hominem person attacks

pwl
*PRIVATE*


Nick Alexander wrote:

>
> On 16-Sep-07, at 3:57 PM, Todd Blanchard wrote:
>
>> I vote that one more post from either instigator on this thread
>> results both parties being unsubscribed.
>
> +1.
>
> Nick
>
>

Hi Nick,

That would be unfair censorship sir.

My responses in defense are not flamage sir. If you consider it
"flamage" then, I submit, that you are in a very direct way supporting
online bullying by people who make ad hominem personal attacks and
leaving no recourse for those who were attacked to defend themselves.
Group awareness of actual personal attacks helps to stop said attacks
from occurring in the first place.

I have attempted to end the discussion, however, uninvolved people keep
making false and misleading statements and even potentially liableous
statements. These outrageous statements do need to be addressed for the
record. I have asked them to cease the comments (or to email me
directly) but they keep making them publicly.

Now that the direct attacks have stopped (hopefully it stays that way),
the sarcasm has started. Oh well, I guess people support the bully after
all. It's a strange society we live in where the victim in these matters
is punished or treated indifferently by people.

It's also interesting to note that none of these others making
statements was involved in the conversation between myself and the
person who made an ad hominem attack against me sir, so I don't know
what they have to do with it. Really it's not their business especially
since the person who made the attack moved on without further personal
attacks.

I know that not all agree with defending themselves against those
bullies who attack others with personal attacks.

I hope that you never have to deal with people who personally attack you
online.

I too can hope to dream that people don't initiate personal attacks in
the first place. Especially completely unprovoked and unfounded attacks
as in this case. However, I would fully come to your support and assist
you in every way I could to defend yourself from such personal attacks.

By the way, I did change the subject heading so people could avoid the
posting if they so wished. A little step towards keeping the noise level
down.

I personally apologize to you for the distraction it may have caused.

All the best and I look foward to your contributions to Squeak and
Smalltalk.

All the best,

Peter




Reply | Threaded
Open this post in threaded view
|

RE: responding to ad hominem person attacks

Dat Nguyen-2
In reply to this post by ncalexan
+1

Dat

> From: [hidden email]
> Date: Sun, 16 Sep 2007 17:07:02 -0700
> To: [hidden email]
> Subject: Re: responding to ad hominem person attacks
>
>
> On 16-Sep-07, at 3:57 PM, Todd Blanchard wrote:
>
> > I vote that one more post from either instigator on this thread
> > results both parties being unsubscribed.
>
> +1.
>
> Nick
>


Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! Try it!

pwl
Reply | Threaded
Open this post in threaded view
|

Re: PRIVATE responding to ad hominem person attacks

pwl
In reply to this post by ncalexan
Hi,

The message with the heading "Re: PRIVATE responding to ad hominem
person attacks" really was only meant to go to one person. For some
reason when I pushed "reply" Firefox put in the group list name and not
the persons name and email as it often does. I didn't expect that. This
is an example of a common mistake that happened during the discourse on
this list.

I do apologize to you all. I had not intended the noise level to be so
high. I simply didn't expect so many people to come to the defense of
the person who initiated the ad hominem personal attack.

Peace.

The future of Smalltalk and Squeak await us.

All the best,

Peter




Reply | Threaded
Open this post in threaded view
|

Re: Blocks (Re: Fear and loathing of the "perification" of Smalltalk)

Colin Putney
In reply to this post by Marcel Weiher
On Sep 14, 2007, at 3:51 PM, Alan Kay wrote:

> Re: unification of blocks and methods (procedures).
>
> I first saw this in EULER (Wirth and Weber ca 1966), but then saw  
> an earlier similar notion by Landin in ISWIM and its predessors. I  
> used the idea in my first OOP language (FLEX ca 1967-9), which also  
> had complete static nesting of scopes, etc.
>
> But later I decided I didn't like blocks as values because they are  
> super time bombs when passed around and completely violate  
> encapsulation. I really wanted external objects (not internal  
> blocks) to be passed around, and wanted a simpler way to think of  
> contexts internally. So we left them out of the first few  
> Smalltalks. (I still don't like them ...)

On Sep 16, 2007, at 2:52 AM, Marcel Weiher responded:

> A block is just an unattached/anonymous method body and a method  
> just a block with a name that's attached to a class.   However,  
> with that unified view it becomes immediately obvious that there is  
> something wrong with blocks.  After all, we don't directly call  
> methods in other cases, that's early binding and a Bad Thing.  
> Instead we send messages to objects.  How does not naming the  
> method body make this type of early binding and leaking  
> implementation better?

That's not quite true. In Smalltalk, blocks *are* objects, and it's  
not possible to directly "call" a block. Instead, you send the  
message #value to it. This isn't early binding, because there are  
other things that respond to #value - MessageSends, for example, or  
Seaside's Continuations. Heck, Object provides a trivial  
implementation too.

I see what Alan was getting at about violating encapsulation: if you  
create a block that can access an object's internal state, then use  
it as a method of some *other* object, you end up with two objects  
that are quite intertwined, a sort of quantum entanglement between  
objects. I've done some neat stuff with that in Javascript, but I do  
agree that it dilutes the strict purity of object orientation that  
one finds in Smalltalk.

This is a bit strange, but I'm coming around to the idea that one of  
Smalltalk's greatest strengths is actually its block syntax. It'd be  
pretty tough to find a lighter-weight syntax for a closure. Even Lisp  
requires you to type out L-A-M-B-D-A, although the pain can be  
mitigated with macros. Ruby comes close, but {} doesn't actually  
create a real object. Javascript would be soooo much better if you  
didn't have to type out "function(){}" to create a closure. The  
lightness of Smalltalk blocks is what makes gems like  
#ifTrue:ifFalse: not only possible but practical.

Alan, can you elaborate on what you mean by "super time bombs?"

Colin

Reply | Threaded
Open this post in threaded view
|

Re: Blocks (Re: Fear and loathing of the "perification" of Smalltalk)

Alan Kay-4
At 02:35 AM 9/17/2007, Colin Putney wrote:
Alan, can you elaborate on what you mean by "super time bombs?"

Sure. I simply meant that a block containing an assignment to the internal state of an object can be passed around willy nilly to other objects and some random time in the future can be sent value and presto! you've cause a side effect on the internal state of the object that will be very hard to track down if it's a bug.

That seems really bad (and is not scalable). It is like using getters and setters instead of goals, but worse. Neither of these would be what I would call real object-oriented design, which would emphasize the separations between insides and outsides, between goals and methods, between asking and telling.

Cheers,

Alan

On Sep 14, 2007, at 3:51 PM, Alan Kay wrote:

Re: unification of blocks and methods (procedures).

I first saw this in EULER (Wirth and Weber ca 1966), but then saw 
an earlier similar notion by Landin in ISWIM and its predessors. I 
used the idea in my first OOP language (FLEX ca 1967-9), which also 
had complete static nesting of scopes, etc.

But later I decided I didn't like blocks as values because they are 
super time bombs when passed around and completely violate 
encapsulation. I really wanted external objects (not internal 
blocks) to be passed around, and wanted a simpler way to think of 
contexts internally. So we left them out of the first few 
Smalltalks. (I still don't like them ...)

On Sep 16, 2007, at 2:52 AM, Marcel Weiher responded:

A block is just an unattached/anonymous method body and a method 
just a block with a name that's attached to a class.   However, 
with that unified view it becomes immediately obvious that there is 
something wrong with blocks.  After all, we don't directly call 
methods in other cases, that's early binding and a Bad Thing.  
Instead we send messages to objects.  How does not naming the 
method body make this type of early binding and leaking 
implementation better?

That's not quite true. In Smalltalk, blocks *are* objects, and it's 
not possible to directly "call" a block. Instead, you send the 
message #value to it. This isn't early binding, because there are 
other things that respond to #value - MessageSends, for example, or 
Seaside's Continuations. Heck, Object provides a trivial 
implementation too.

I see what Alan was getting at about violating encapsulation: if you 
create a block that can access an object's internal state, then use 
it as a method of some *other* object, you end up with two objects 
that are quite intertwined, a sort of quantum entanglement between 
objects. I've done some neat stuff with that in Javascript, but I do 
agree that it dilutes the strict purity of object orientation that 
one finds in Smalltalk.

This is a bit strange, but I'm coming around to the idea that one of 
Smalltalk's greatest strengths is actually its block syntax. It'd be 
pretty tough to find a lighter-weight syntax for a closure. Even Lisp 
requires you to type out L-A-M-B-D-A, although the pain can be 
mitigated with macros. Ruby comes close, but {} doesn't actually 
create a real object. Javascript would be soooo much better if you 
didn't have to type out "function(){}" to create a closure. The 
lightness of Smalltalk blocks is what makes gems like 
#ifTrue:ifFalse: not only possible but practical.

Alan, can you elaborate on what you mean by "super time bombs?"

Colin


Reply | Threaded
Open this post in threaded view
|

Re: Blocks (Re: Fear and loathing of the "perification" of Smalltalk)

Marcel Weiher
In reply to this post by Colin Putney

On Sep 17, 2007, at 2:35 AM, Colin Putney wrote:

>> A block is just an unattached/anonymous method body and a method  
>> just a block with a name that's attached to a class.   However,  
>> with that unified view it becomes immediately obvious that there is  
>> something wrong with blocks.  After all, we don't directly call  
>> methods in other cases, that's early binding and a Bad Thing.  
>> Instead we send messages to objects.  How does not naming the  
>> method body make this type of early binding and leaking  
>> implementation better?
>
> That's not quite true. In Smalltalk, blocks *are* objects,

They "are" objects only in a very trivial way, just as much and as  
little as method bodies.

> and it's not possible to directly "call" a block. Instead, you send  
> the message #value to it.

That's just another implementation detail.  Notice how #value does not  
carry the intension of what you are trying to do, it is a completely  
generic message.  Your intension is not encoded in the message, it is  
supplied solely by the implementation ( = method body )  you've  
provided in the block itself.

Marcel


Reply | Threaded
Open this post in threaded view
|

Re: Blocks (Re: Fear and loathing of the "perification" of Smalltalk)

timrowledge
In reply to this post by Colin Putney

On 17-Sep-07, at 2:35 AM, Colin Putney wrote:

>
> I see what Alan was getting at about violating encapsulation: if  
> you create a block that can access an object's internal state, then  
> use it as a method of some *other* object, you end up with two  
> objects that are quite intertwined, a sort of quantum entanglement  
> between objects.
Actually I'd like to suggest another way of looking at that; you can  
only get the 'encapsulation violation' by compiling the block  
originally within the class you are violating. Passing a block out to  
some other object is really nothing more than handing out permission;  
it's making the other object into a "friend with privileges".

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Fractured Idiom:- ALOHA OY - Love; greetings; farewell; from such a  
pain you should never know



Reply | Threaded
Open this post in threaded view
|

Re: Assembly Language

Jecel Assumpcao Jr
In reply to this post by Tapple Gao
Matthew Fulmer wrote on Sat, 15 Sep 2007 15:03:52 -0700

> On Sat, Sep 15, 2007 at 02:26:47PM -0700, Peter William Lount wrote:
> > Each of the Tile 64 Processors is thousands of more times more powerful
> > than that old 6502 based Apple ][ system. I can imagine what Gemstone
> > Warrior would be like on it! Fully object oriented, fully message
> > oriented, fully 4-D (3D+Time)!
> >
> > If you really want a chip to play with as a hobby with potential for
> > future success play with the Tile 64 chip!
> >
> > Smalltalk on the Tile 64 chip will be hot! When will it happen?

Note that this is a pretty expensive chip (around $500 in large
quantities). There are some cheaper (but with memory limitations that
might make them hard to use for Smalltalk) processor arrays:

http://www.intellasys.net/
http://www.parallax.com/propeller/index.asp

Some more expensive alternatives:

http://www.streamprocessors.com/
http://www.cradle.com/
http://www.stretchinc.com/

Here are some FPGA-like processor arrays pretty much in the spirit of
RAW (the MIT project where the Tile 64 comes from):

http://www.ambric.com/ 
http://www.mathstar.com/ 
http://www.brightscale.com/
http://www.picochip.com/

> Jecel Assumpcao Jr. is working on a quite similar project. He is
> putting Neo Smalltalk [1] on a 9-core Plurion [2] processor. He
> has said he will follow this up with a port of Spoon. More
> information can be found on his hardware Swiki [3].
>
> I'll be working with him on this project as part of my graduate studies.

As soon as I finish a text I am writing (plan for master's thesis work -
has nifty things like compiling Smalltalk into hardware objects. Sadly,
it is in Portuguese), I will start working on this implementation. The
idea is to make this development as open as possible, with a public
version control system, a bug tracker and a blog. This would be a good
thing to implement in Seaside but perhaps I should start out with
existing solutions to get results faster?

It would be interesting if people could look at the (extremely bare,
sorry) description of the instruction set (Matthew gave the link in his
email, but here it is again - http://www.merlintec.com:8080/hardware/32)
and give their opinions. This is a RISC design, not a bytecoded stack
machine like I had previously been doing. The idea here is to play nice
with the C world (very important for Squeak, not as much for my own
Smalltalk) while still being a good learning experience for someone
digging deeper and deeper (starting with eToys, for example, then
Smalltalk-80 code, then meta stuff and so on) until they get to the
hardware level.

If I can get 9 cores running at 240MHz on my ML401 development board
then we will have a very reasonable view of what future Smalltalk
computers will be like.

-- Jecel

pwl
Reply | Threaded
Open this post in threaded view
|

Re: Blocks (Re: Fear and loathing of the "perification" of Smalltalk)

pwl
In reply to this post by Colin Putney
Hi,

Colin Putney wrote:
> On Sep 14, 2007, at 3:51 PM, Alan Kay wrote:
>
>> Re: unification of blocks and methods (procedures).
>>
>> I first saw this in EULER (Wirth and Weber ca 1966), but then saw an
>> earlier similar notion by Landin in ISWIM and its predessors. I used
>> the idea in my first OOP language (FLEX ca 1967-9), which also had
>> complete static nesting of scopes, etc.

Alan means, correct me if I'm mistaken, that the notion of code blocks,
Lambda like closures wasn't present. What alternatives were discovered?
Then and since?

I suspect that what is not meant by Alan's comment, again correct this
for accuracy, is the notion of a unified Smalltalk Block and Method
Syntax as was suggested.


>>
>> But later I decided I didn't like blocks as values because they are
>> super time bombs when passed around and completely violate
>> encapsulation. I really wanted external objects (not internal blocks)
>> to be passed around, and wanted a simpler way to think of contexts
>> internally. So we left them out of the first few Smalltalks. (I still
>> don't like them ...)

Alan, that must have been an interesting debate within the group. By
external objects would they perchance have any difference from Object?

In a way you almost want an interaction using a entirely different
contextual mechanism that pulses a constraint network depending on the
objects and methods involved. A non-messaging contextual paradigm, of
course expressed in unary, binary and keword message passing syntax
[UBKMPS].


>
> On Sep 16, 2007, at 2:52 AM, Marcel Weiher responded:
>
>> A block is just an unattached/anonymous method body and a method just
>> a block with a name that's attached to a class.   However, with that
>> unified view it becomes immediately obvious that there is something
>> wrong with blocks.  After all, we don't directly call methods in
>> other cases, that's early binding and a Bad Thing.  Instead we send
>> messages to objects.  How does not naming the method body make this
>> type of early binding and leaking implementation better?

Hmmm... Early Binding = Bad Thinking a Thing.

In a way you want a simulation of some sorts that performs Late Binding
in the method contexts dynamically on the fly for a deterministic
outcome each time it's run. Non-linear indeed.


>
> That's not quite true. In Smalltalk, blocks *are* objects, and it's
> not possible to directly "call" a block. Instead, you send the message
> #value to it. This isn't early binding, because there are other things
> that respond to #value - MessageSends, for example, or Seaside's
> Continuations. Heck, Object provides a trivial implementation too.

A difference in view point enables dual understanding of all known
perspectives.


>
> I see what Alan was getting at about violating encapsulation: if you
> create a block that can access an object's internal state, then use it
> as a method of some *other* object, you end up with two objects that
> are quite intertwined, a sort of quantum entanglement between objects.
> I've done some neat stuff with that in Javascript, but I do agree that
> it dilutes the strict purity of object orientation that one finds in
> Smalltalk.

A isue with blocks is that they are imperative. How about using the
Declaratives written in [UBKMPS] form instead of the imperative words
that normally show in a Block's square brackets?

The Knights of the Square Brackets can figure this one out quickly. The
peasants picking from the aromatic plants might catch up eventually with
our help.


>
> This is a bit strange, but I'm coming around to the idea that one of
> Smalltalk's greatest strengths is actually its block syntax.

Yes, Block Syntax, "[ ]",  is as important as the notions of messaging
and objects in it's own right. Unified Method and Block Syntax orders of
magnitude more so.

Imagine Blocks can be evaluated ANY WAY that YOU THE PROGRAMMER+USER
decide at runtime deferred to realization in your specific use case
scenarios. Block evaluators, a few of which were recently present in an
prior thread last week are normal things that you can extend Smalltalk
or ZokuScript with just by writing using unary, binary and keyword
message passing syntax that we know so well. Think about it. Write some
examples. Visualize how this would change your coding of programs and
the programs themselves could be so much more less brittle.
Pragmatically how to implement these visualizations in realistic ways?
What critiques are there from the perspectives of existing implementations?

This achieves what at least one language designer aims for: a opening
for a whole new dimension for extensions by everyone with ease {and
their great ideas} over time as the extensions unfold in unpredictable
ways in the years to come. Who imagined that Block>>#values would come
to the forefront as a new dimension? New dimensions of openings for
extensions in the library using standard unary, binary and keyword
message passing syntax are where the future comes from. From this
authors perspective, that is, and maybe yours.



> It'd be pretty tough to find a lighter-weight syntax for a closure.

[ | ]


> Even Lisp requires you to type out L-A-M-B-D-A, although the pain can
> be mitigated with macros. Ruby comes close, but {} doesn't actually
> create a real object. Javascript would be soooo much better if you
> didn't have to type out "function(){}" to create a closure. The
> lightness of Smalltalk blocks is what makes gems like #ifTrue:ifFalse:
> not only possible but practical.

ifNil:ifNotNil:



>
> Alan, can you elaborate on what you mean by "super time bombs?"

Aspects of existing blocks that blow applications out of the water or at
least do so through increasing complexity via a magnification effect
often disproportionate to ones ability to comprehend the full operations
of the program as it crashed or produced it's operative results in the
real world.

Something like that maybe?

In summary, using Unary, Binary and Keyword Message Passing Syntax
[UBKMPS] is an essential way to make the evaluators of Blocks unlimited.

All meta operations in UBKMPS make this possible using what you already
know.

All the best,

Peter William Lount
[hidden email]


ps. Each node in the Tile 64 Processor can see the same network traffic
at roughly the same instant assuming network multi-casting. What
applications for this can you think of? Parallel operations play into
this inquiry.





1 ... 910111213