Hi Norbert,

Hi,

I'm asking myself if there is any common sense about
how to indent the code in smalltalk/squeak.

Most of the time I see something like

statement do: [ :parameter |
   otherStatement selector: [
        mostinnerstatement ] ].

or

statement do: [ :parameter | otherStatement ].

Kent Beck's "Smalltalk Best Practice Patterns" has a good section on this. He presents ten simple patterns to drive the formatting of Smalltalk code.

The book is a bit older now - it dates from 1997 - but might not be too hard to find. I think our local library system (here in Columbus, OH) even had a copy.

Beck's Indented Control Flow pattern says,

        Put zero or one argument messages on the same lines as their receiver.
        For messages with two or more keywords put each keyword/argument
        pair on its own line, indented one tab.

So, you would say

        limit := myList size.

or

        larger := firstCount max: secondCount.

but

        inRange := amount
                between: low
                and: high.

He also has patterns that describe how to format conditionals, blocks, etc. The rest of the book is good too - it has advice about other parts of Smalltalk usage.

As others have said, of course the most important thing is to pick a style that works well and use it consistently. I like Beck's style, but as you have seen, there are other good ones in use.

Benjamin Schroeder

_______________________________________________
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners

Reply via email to