<div class="gmail_quote">On Mon, Dec 19, 2011 at 12:48 PM, Walter Bright <span dir="ltr"><<a href="mailto:newshound2@digitalmars.com">newshound2@digitalmars.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">On 12/19/2011 11:52 AM, ddverne wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Sunday, 18 December 2011 at 07:09:21 UTC, Walter Bright wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
A programmer who doesn't know assembler is never going to write better than<br>second rate programs.<br></blockquote></blockquote></div></div></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

</blockquote>
</blockquote></div></div>You are going to be a better C, C++, or D programmer if you're comfortable with assembler.<br>
</blockquote></div><br><div>In my university the assembler course was a weeder course. If you passed it you got in to second year (750 entrants, 150 openings). </div><div><br></div><div>My point is being comfortable with assembler is likely an effect not a cause. If you have the motivation and skills to pick up assembler in a semester then you are probably going to be a better programmer in the end simply because of your motivation and skills, not necessarily from knowing assembler.</div>
<div><br></div><div>OTOH my first exposure to programming was hand assembly of machine code on a MIKBUG based SWTPC. When I used an actual assembler it was, "thank you gxd for making my life a whole hell of a lot easier!" C was the next step in ease. You mean I don't have to actually keep track of every register's content? And so on up the tree of abstraction I went. </div>
<div><br></div><div>In the end, this progression has been extremely beneficial in visualizing how all that abstract source code translates down into machine code. Memory allocation, speed and size optimization, etc. etc. make a lot more sense when you know how the machine behaves at a fundamental level.</div>
<div><br></div><div>And on the other-other hand, the bottom line is this. Wetware causes the problems in sw development. How can a language feature help fix or prevent those problems? And of course all that balanced against the need for some developers to break the speed limit.</div>
<div><br></div><div>John</div><div><br></div>