On Thu, 8 Apr 1999, George Greer wrote:
> I like the whitespace is ignored attitude. It allows people to have much
> more flexibility with their own "taste" in coding style.
Although that might not be terribly desirable, given that a mud is a
calloborative project and, from personal experience, a big problem is
always getting everyone to write readable code.
> > for (i in character_list)
> > if (!isnpc(i) && i.got_message < 10)
> > send(i, "hello.\r\n")
> > i.got_message++
>
> Neat idea, but what happens if people like 4 spaces, or tabs, or mix the
> two, or get it badly formatted from cut & paste, or etc.. Then people with
> variable-spaced font terminals may have words with you.
Tabs could be expanded to, by default, 8 spaces. I suppose I can allow
that to be changed within a source file via a "#pragma" type thing. Your
spacing doesn't need to be two, I just used that as an example. I could
very well do:
if (i !in character_list)
if (isnpc(i))
i.flags.set(crafty)
The only time we'd have an error with this is if we indented a line
between the "if" and the "i.flags..." line, as that is between two
established levels. Anyway, there's two ways to approach this type of
block formation. I can make it so that once you establish a level, the
indentation must be the same throughout the file or function in order to
place something in that level:
if (i !in character_list)
if (isnpc(i))
i.flags.set(crafty)
else if (i.flags.has(foobar))
i.flags.set(bar)
which I prefer, or I can allow inconsistent spacing of new-levels, but
consistent spacing with blocks. That is,
if (i !in character_list)
if (isnpc(i))
i.flags.set(crafty)
log("set crafty flag on " + i.name())
else if (i.flags.has(foobar))
i.flags.set(bar)
log("set bar flag on " + i.name())
As for variable width fonts, I don't see the point. Every space will be
the same in the font -- and I'm guessing a tab will just be represented by
a multitude of those spaces on the screen space, not by a pre-drawn "tab"
character. The receiving badly formatted code argument is quite
legitimate, though, since there won't be a way to tell where a statement
truly belongs if there's no logical give-aways.
-dak
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST