<br><br><div class="gmail_quote">On Sat, Feb 7, 2009 at 11:58 PM, Riobard Zhan <span dir="ltr"><<a href="mailto:yaogzhan@gmail.com">yaogzhan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d"><br>
On 8-Feb-09, at 3:50 AM, Bruce Leban wrote:<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
You can not generalize that far. Most programming languages require commas (notable exceptions include Lisp and Tcl), but Python is the only language that requires trailing colons.<br>
<br>
Nope. See <a href="http://en.wikipedia.org/wiki/Smalltalk" target="_blank">http://en.wikipedia.org/wiki/Smalltalk</a><br>
</blockquote>
<br></div>
Just checked. Smalltalk's colons seem to have completely different semantics. Correct me if I'm wrong, but they appear to be at the end of every keyword, including ifTrue and ifElse.<div class="Ih2E3d"><br>
</div></blockquote><div>Your statement that no programming language used trailing colons is simply false. I and many others have said that colons and semicolons have completely different semantics as well and you have chosen to ignore that.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d"><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Clearly the use of the specific semicolon character is confusing you. So let's replace it with a better symbol: \n as in this example:<br>
<br>
  for i in x: foo(i) \n bar(i+1)<br>
<br>
Sure a \n is optional at the end of any line because a blank line is always allowed. So what?<br>
</blockquote>
<br></div>
What's the point you are trying to make?<br>
</blockquote></div><br>The point is that the \n token and the : token have different semantics entirely. The \n token is used to separate statements on a single line. You seem to think that they are related because they look similar and now they don't.<br>
<br>One more final point: in some languages, the semicolon is a statement TERMINATOR as it is in C and in others it is a statement SEPARATOR as it is in Pascal. I think your time would be better served by working to convince the Pascal people and the C people to reconcile that inconsistency than this discussion.<br>
<br>--- Bruce<br>