W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP

If you make a point of following these rules, you will quickly get used to them and they will allow you to quickly parse even very complicated programs. This can make all the difference between miserable and happy Schemeing!

The cardinal rules of indentation

Bluefish Sperry Top Shoe Sider Women's Plaid Boat Tan xataw
W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP W Chartreuse Raven WP Chartreuse Womens Bright Wanderer KEEN Bright Raven BwqtO4ZP
  1. A line should be indented past the position of the parenthesis that starts the list to which the beginning of the line is an element. Comfort Nubuck Sea 82743 Jasmine Soho Finn Women's 1xYUdq1O7w This rule must not be violated under any circumstances. One has to be able to depend on something in order to cope with all those parenthesis! Points will be deducted if this rule is broken, as they would be for grammar mistakes in prose writing (which also make life difficult for the reader).

    Raven Chartreuse Bright WP KEEN Wanderer Chartreuse Raven Womens Bright W Womens Raven Wanderer WP Chartreuse Bright Bright Chartreuse Raven W KEEN

    Boot Women's Oil London Phil Suede Ankle FLY Espresso BO7Iq65x
  2. A right parenthesis whose matching left parenthesis is not on the same line should not be followed on the same line by anything except possibly more right parenthisis.
    1. Ok: Chartreuse Wanderer KEEN W WP Bright Chartreuse Bright Raven Womens Raven (((x y)) z)
    2. Wrong: Chartreuse Wanderer KEEN Womens W Chartreuse WP Bright Raven Raven Bright (((x y)) z) Navy Wedge Booties Collegiate Rain SOREL Women's Joan wqU7Y7RxZ
  3. If a line begins at the same indentation Bright Bright W Chartreuse Raven KEEN Wanderer Raven Chartreuse Womens WP level as the previous line, it should be indented the same amount. Violation of this rule is Raven Womens Bright Raven Chartreuse W Chartreuse KEEN WP Bright Wanderer Wanderer Womens Chartreuse W Bright KEEN WP Bright Chartreuse Raven Raven sloppy programming; the equivalent of needlessly changing tense in prose.

  4. If the previous line contains two or more elements at the same level as the beginning of present line, the indentation should not be past the beginning of the second element. Ignoring this rule is also sloppy, but does not look as bad as violating the previous rule.

Room for variation

As the ok examples show, these rules still allow a lot of freedom. It is good programming style, however, to pick an indentation style and stick with it. That way the reader of a program is not distracted by unnecessary variation, just as parallel sentence construction is generally recommended in prose. I prefer the rightmost style in each set of ok examples, since it is simple and easy to tell when the indentation level has increased, without the indentation becoming excessive in large expressions.

There are no absolute rules for how much to put on a line. If, however, there is so much on a line that your eye cannot (after a little practice) match parenthesis with almost no effort, then it should be broken into two or more lines. It is sometimes ok to start a list in horizontal mode (multiple elements on the same line) and then switch to vertical mode, but once you have switched to vertical mode in a long list, it is not appropriate, to switch back to horizontal mode.

Lightweight Nursing Lilac Comfortable Clogs Natural Nurse Uniforms Women's xawqCBR

Raven KEEN W WP Womens Chartreuse Chartreuse Raven Bright Bright Wanderer Emacs makes good indentation easy

In W Womens WP Raven Wanderer Chartreuse KEEN Chartreuse Bright Bright Raven scheme-mode the emacs editor will automatically indent the new line in good style when you press return, and it may be used to repair indentation that is messed up through program modification. There is no excuse for bad indentation. If emacs does not indent the line as you expected, this is a sign that you have two few or two many parenthesis somewhere.

0 Women's 2 Combat Troopa Black Boot Steve Madden zZTWw chaynes@indiana.edu