Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!bloom-beacon!bu-cs!purdue!decwrl!sun!pitstop!sundc!seismo!uunet!mcvax!ukc!strath-cs!glasgow!orr
From: orr@cs.glasgow.ac.uk (Fraser Orr)
Newsgroups: comp.lang.misc
Subject: Re: Assembly or ....
Keywords: Assembly
Message-ID: <2012@crete.cs.glasgow.ac.uk>
Date: 30 Nov 88 16:26:23 GMT
References: <1388@aucs.UUCP> <407@ubbpc.UUCP> <6586@galbp.LBP.HARRIS.COM>
Reply-To: orr@cs.glasgow.ac.uk (Fraser Orr)
Organization: Comp Sci, Glasgow Univ, Scotland
Lines: 35

In article <6586@galbp.LBP.HARRIS.COM> jsb@advdev.UUCP (Jeff Barber) writes:
>On a slightly different note: it's been my own experience that programmers
>who aren't comfortable with assembler never completely understand the
>subtleties of: pointer manipulations, type conversions between signed
>and unsigned, integer truncation and extension, structure padding, etc.
>Furthermore, too much of the program (and programming) environment will 
>forever remain "magic" if you don't understand assembler and the
>underlying machine architecture.  This is okay, I guess, if you want to
>write nothing but COBOL applications for the rest of your life.

You are of course right. But why? Because they weren't taught. As I've
said, learning to program in assembler may or may not be useful (I don't
think that as a general rule it is worth the investment) but learing
about run time environments, value representation and the ideas behind 
computer architectures is very important. FOr this reason it important
to learn these subjects NOT with the clutter of an assembly language,
and NOT in the machine dependent way that learning an assembler would
lead to, but as an independent subject.

I'm a programmer of some years experience now, and have worked on several
different systems, in many different languages including writting
several large programs in assembler. To me it still seems magic that
my programs get executed. Perhaps at a different level from that
which you write of, but I still find it hard to believe that minute
charges pasing about on a tiny piece of silicon can cause this terminal
emulator I'm using to work. And I certainly don't understand the details
of how it can happen. There is always going to be a certain degree of
magic, but if that magic works reliably, I don't see it as a problem.

>J. Barber              Lanier Business Systems              Atlanta, GA


==Fraser Orr ( Dept C.S., Univ. Glasgow, Glasgow, G12 8QQ, UK)
UseNet: {uk}!cs.glasgow.ac.uk!orr       JANET: orr@uk.ac.glasgow.cs
ARPANet(preferred xAtlantic): orr%cs.glasgow.ac.uk@nss.cs.ucl.ac.uk