Fw: Style

Peter William Lount peter at smalltalk.org
Sat Jun 19 04:34:27 UTC 1999


----------
> From: Bijan Parsia <bparsia at email.unc.edu>
> To: peter at smalltalk.org
> Subject: Re: Fw: Style
> Date: June 18, 1999 1:00 PM
> 
> I've moved this off the Squeak list.
Why?
> 
> --On Friday, June 18, 1999, 12:26 PM -0700 Peter William Lount
> <peter at smalltalk.org> wrote:
> 
> > Hi,
> > 
> >> My point is that the "style" rules are actually subjective
"guidelines"
> >>> How can guidelines be subjective?
> > 
> > It's not that the "guidelines are subjective" it's that you can apply
your
> > subjective decision process to the problem at hand using the "rules or
> > guidelines" to assist and potentially guide your choices.
> 
> This is literally meaningless to me. Moving the 'subjective' from
> 'guidelines' to 'decision process' doesn't clarify anything.
By subjective I mean to say by your own personal judgement, experience as
opposed to some external "objective" criteria like laws of nature.

> 
> > But since they
> > are "subjective guidelines" you have the choice to not follow them.
> 
> Of course you have the choice not to follow them. You have the choice to
> speed as well. Choosing to speed is choosing to do something illegal.
That
> is, it's choosing to do something *wrong*. Of course, it's not
> *unqualifiedly* wrong. It's certainly *legally* wrong. It *may* be
> *morally* wrong (in a number of complex ways). It may also be
prudentially
> wrong. Whether it's any of this are matters of "objective fact/judgement"
> in quite straightforward ways.
There is a difference in that "speeding laws" are rules that we are obliged
to follow when obtaining a drivers license.

So if someone has their own "strict smalltalk style rules" and I break them
I might be breaking their rules but it is not in any possible way "wrong".
I just don't follow their rules and since I'm not "legally bound" by them
I'am not doing anything wrong. However the reverse is also true since they
are not following my "loose smalltalk style guidelines" and leaving long
methods as they are. But I don't consider them "morally wrong or corrupt".
In fact my "loose smalltalk style guidelines" allow them to rewrite or
refactor the methods as they see fit if they feel it improves them. I might
not agree but my agreement or disagreement does not make them morally wrong
or evil.

> 
> > The
> > choice rests with you and not the rules. The point is your freedom to
> > choose what is acceptable and what isn't.
> 
> There is, one would hope, a clear difference between the concepts
> "accpetable" and "acceptable *to you*" (better, "*accepted* by you").
> Merely having a choice about what rules you systematically follow does
> *not* entail that you were "free to choose" what is *acceptable" and what
> isn't. In *certain* cases, that may indeed be true, but it certainly
isn't
> a valid inference.
Actually it may. Often the only freedom we really have is the freedom to
choose from a limited set of options. The point I was making though is that
"guidelines" are designed to "suggest what to do" while "rules require you
to do something" and by this definition rules impose choices upon you.

> 
> An example: Grammatical correctness isn't a simple matter of choice,
> although you *can* choose to systematically avoid it.
This is different than styles. Smalltalk has "Grammatical rules" that the
compiler enforces. If you don't follow them your programs won't compile.
Long methods and they compile fine even if my style guidelines say that
it's better to not have long methods. A Smalltalk style is "enforced" or
"implemented" by the programmer while the grammar is enforced by the
compiler.

But just because a program can be compiled does not make it correct -
unless you write bug free code all the time.

> 
> > Strict rules require you to give
> > up your freedom of choice and defer the decision to what others have
> > defined as the "rules" for "correct style". Who voted them in as the
> > abolute one way is right "smalltalk sytle rulers" anyways?
> 
> The distinction between invention and discovery get rather complex in
these
> matters. (What's voting got to do with anyway? Who says that style rules
> need to be democratically selected?)
I do. I am the one who gets to choose wether or not I follow someone else's
style rules or style guidelines. For the most part I concur with what Ralph
Johnson and Kent Beck say are good or bad smalltalk style but these
evaluations are just not so cut and dry as they are made out to be.

> 
> >> and not "inherent" in the universe like laws of nature. That's why we
> >> call them styles. You have yours and I have mine. This is as it should
be
> >> for it would be a boring universe if we were all the same.
> > 
> >>> <sigh/>I certainly don't call things style because they are
subjective.
> > Neither would I.
> 
> But you just said you did. Am I misreading somehow?
I don't call things  styles just because they are subjective. I don't see
how you get that notion from what I've written. 

A style is  "a way of speaking or writing; esp : one characteristic of an
individual, period, school, or nation; a distinctive or characteristic
manner ;  a fashionable manner or mode ; the custom followed in spelling,
capitalization, punctuation, and typography. "

There are many kinds of styles in art for instance.There is a "picaso
style", a "modern style", an "art deco" style, a "realistic style", an
"abstract style" and many more. Just because you advocate one style over
others does not make the others "wrong", "evil", "morally corrupt". You
might not like the other styles for some reason but so what.

> 
> > One style of dress is to wear business suits to work. Another style is
to
> > be more casual. Neither is "good" or "correct" except in human terms.
> 
> Arguably that's true of all standards. That doesn't make them subjective.
Yes, standards are not inherent in the universe. Laws of nature (even if we
can't describe them with precision) seem to be inherent in the universe.
Standards are "something set up as a rule for measuring or as a model to be
followed". I might violate their "strict smalltalk style rules", but so
what. It's not like they are the dictators of smalltalk style.

> 
> > Both
> > are valid as are many other styles of dress. Some styles of dress may
be
> 
> I have no idea what you mean by 'valid' and I supsect (as many people do
in
> these discussions) that you're using it as a vauge praise term. 
By valid I mean that they have a right to their style of dress. It's valid
in their mind and social group that they intermingle with.

>Plus, I
> think you've started equivicating on 'style'. Since the phrase "personal
> style" makes sense, we should be careful not to assimlated "style" in
> general to this phrase.
There is not one "style" inherent in things.

> 
> > offensive to others. 
> 
> And of course, mere offensive reactions doesn't ential that the style is
> offensive. But mere lack of offensive reaction doesn't entail that the
> style *isn't* offensive. 
So what.

> 
> >>> After all, when you call something a style you implicitly admit it to
> >>> various standards of evaluation ("good style", "bad style", "better
> >>> style"). Now, *certainly* there are modes of evaluation for which the
> >>> standard of correctness is subjective, e.g., I, personally, might
like a
> >>> certain kind of bad style. Indeed, I might like it *because* it's
bad.
> > The point about styles is that they are not good or bad or better or
> > whatever but they are just the way they are.
> 
By "just the way they are" I am meaning to point out that styles are just
that styles and we humans do the judging. And yes we can design styles that
say what is good or bad but thats still us judging.

> No, you're clearly wrong here. Style is an *essentially* value laden
> concept. 
By what does the "valuing"? Styles don't. We do.

>The "laws of the universe", in so far as I understand you, are
> just the way they are. As Kant pointed out, "ought implies can". If
things
> just *are* a certain way, then there's no evaluation possible as there's
no
> possibility of correction.
I don't know about you but I can't correct the law of gravity (even if I
could find a mistake in it).

> 
> > The "various standards of
> > evaluation" are human judgement.
> 
> And lots of people have bad judgement. We try to train our children to
have
> better judgement. (Note: Humility is quite compatible with this point of
> view.)
I don't care if they have bad judgement or good judegement with regards to
this discussion of Smalltalk styles. I respect their write to make their
own judgements. That is what I am defending. If they wish to defer to my
"opinion" or "judgement" about the "quality of their smalltalk code" then
that's fine. But it they don't defer to me then that's fine by me. My point
is simply that we are in a free country.

> 
> > We can call something a good style or a
> > bad style (too many temporary variables in a method where many is less
> > than 5) but it's our perception and jugement that makes it good or bad.
> 
> Surely not. That something is the color green is a matter of perception
and
> judgement but it's not a specific perception or judgement that makes it
> green. You've made the slide from "human based" to "individually
> decidable". That just doesn't follow.
Look. Green is by comon agreement green. We learn what green is while
growing up. We learn to recognize it (baring color blindness) and
communicate about it. Wether green is "good" or "bad" is most definately a
judgement or personal choice.

> 
> (Consider chess. It's entirely a human matter than chess has the rules it
> does. Yet, I can't just *decide* that it's legal to move my bishop along
a
> file.)
We're not playing chess. We're talking about styles of writing smalltalk
source code. Smalltalk does not have style rules layed out like chess has
rules on how chess pieces can move. Sure smalltalk has some rules (i.e.
objects communicate by sending messages and there are rules on how to write
valid Smalltalk expressions that send messages) but is doesn't have style
rules that are enforced by the system. 

> 
> > There is nothing in the universe that says the style is good or bad.
The
> > universe just doesn't care about it. However, we humans often to care
and
> > thus good style, bad style and "my style is better than your style"
type
> > of sillyness.
> 
> Well, I know how *I* use "style" (and associated terms of evaluation).
Who
> elected *you* the arbitrator of *my* use of the concept? :)
No one. I am not defining styles for you. I am defining and writing about
what I think styles to be. If you have a different definition then please
put it in writing and share it with us.

>  
> >>> Of course, this is off topic now :). For the interested, I strongly
> >>> recommend Hume's "Of the Standard of Taste" for an account of matters
of
> >>> taste where there *is*, and properly so, disputatum.
> > 
> >>> Cheers,
> >>> Bijan Parisa.
> > Well if you drink too much you may loose all your sense of taste...
;--)
> 
> Cute :)
> 
> But beside the point! By some of your comments ("temp var police", etc.)
> you imply that it's somehow illegitamately authoritarian to evaluate
> matters of style. 
No I just don't like others making rules on how I should or shouldn't write
my software.

> But it's perhaps *more* authoritarian to demand that no
> one do so.
I am defending my right and your right to choose for yourself. It's call
the freedom of speach and there is nothing "authoritarian" about it. Just
the oposite.

> In so far as we defer to *anyone's* judgement (and properly so),
> or hold that our *own* past judgements often need revision, we admit
> intersubjective (at the very lease) standards. 
You are free to defer to "anyone's" judgement as you see fit. But don't
require me to.

> There's nothing mystical
> about them, and there's nothing specially arbitrary about them. 
So your saying that standards are not arbitrary?

> Indeed,
> admiting that standards can and *should* shift highlights the notion that
> *standards* themselves are objects of evalution.
Very good. Finally an admission that standards are human based and not laws
of nature.

> 
> Nothing follows about gulags, torture, etc. :)
Unfortunately, for people in gulags and people who are tortured, the
universe doen't care about this. In fact the universe permits it. We as
humans are the ones who care or don't care when we or others are locked up
or tortured (unless we are the ones doing the torturing). 

Actually there is a funny red dwarf eposode about this with a place where
you can't break any laws since the universe won't allow it. If you try to
do something bad the bad thing happens to you! They use this effect to
defeat the "bad" guy.

> 
> And at the risk of sounding authoritarian, you *sound* like an
> "Unsophisticated Relativist". Almost *no one* who puts serious effort in
to
> defending relativism defends that varient. The problems are deep, and
well
> explored. Forgive me for not going into greater detail in this note,
though
> you should be able to glean the standard criticisms from my comments.
Whatever. 

I am just defending your right to choose to follow whatever style rules or
guidelines you want to follow when you write your source code. If you
prefer "Ralph Johnson's" or "Kent Beck's" style guidelines over mine that
is fine and that is your choice.

> 
> Cheers,
> Bijan Parsia.


All the best,

Peter William Lount
http://www.smalltalk.org
peter at smalltalk.org





More information about the Squeak-dev mailing list