I apologize for leaving the :-) out in my original post.<br><br>Just to be clear: (1) I indeed have seen this mistake from beginning programmers and (2) I think they should get over it.<br><br>I also don't think that = and == should be the same syntax and trust the compiler to figure out which one you mean.<br>
<br>I also don't think spaces should be optional, despite the fact that no space probe has ever been lost as a result of that feature. :-(<br><br><a href="http://my.safaribooksonline.com/0131774298/ch02">http://my.safaribooksonline.com/0131774298/ch02</a><br>
<a href="http://catless.ncl.ac.uk/Risks/9.54.html">http://catless.ncl.ac.uk/Risks/9.54.html</a><br><br>--- Bruce<br><br><div class="gmail_quote">On Thu, Feb 5, 2009 at 11:04 AM, Curt Hagenlocher <span dir="ltr"><<a href="mailto:curt@hagenlocher.org">curt@hagenlocher.org</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">On Thu, Feb 5, 2009 at 10:30 AM, Bruce Leban <<a href="mailto:bruce@leapyear.org">bruce@leapyear.org</a>> wrote:<br>
> In algebra, you don't have to put a multiplication sign in between two<br>
> quantities that you want to multiply. I've seen beginning programmers write<br>
> things like<br>
><br>
> x = 3a + 4(b-c)<br>
><br>
> instead of<br>
><br>
> x = 3*a + 4*(b-c)<br>
><br>
> Why should we require the stars when it's unambiguous what the first<br>
> statement means?<br>
<br>
</div>Sure, and given the following program:<br>
a = 2<br>
b = 4<br>
print ab<br>
shouldn't we be able to print "8", given that the meaning of the<br>
program is unambiguous?<br>
</blockquote><div><br>That would be so cool! If any variable is undefined, break it up into smaller variables and if they're numbers multiply them and if they're strings concatenate them. Wow! <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<br>
Ultimately, you have to balance ease-of-use against consistency --<br>
both because too much inconsistency can actually harm ease-of-use and<br>
because "special cases" tend to combine in crazy ways to create<br>
horrible edge cases. Where to draw the line is always a matter of<br>
personal taste, but the Python language has consistently favored<br>
consistency in its philosophy.<br>
<font color="#888888"><br>
--<br>
Curt Hagenlocher<br>
<a href="mailto:curt@hagenlocher.org">curt@hagenlocher.org</a><br>
</font></blockquote></div><br>