Date : Mon, 21 Sep 2009 17:17:49 +0200
From : rick@... (Rick Murray)
Subject: Beeb, this was your grandma!
me@... wrote:
> Here you go:
Just watched it.
Whoa!
It must suck to be introduced to computers at school these days.
Hi, "I'm a PC" and this is Microsoft Office...
There might have been a passing interest had I been introduced to either
VisualBasic or C [*], but otherwise I might have become more interested
in motor mechanics or somesuch...
At least I can thank the design of the BBC Micro for positively inviting
its innards to be fiddled with.
But Nellie... Wow. It's a shame there's no information on-line. It's how
big? Clock speed? Is it an actual processor design or just a helluva lot
of transistors? I *loved* the hot-swap capabilities!
I see what you mean about the boy that resembles JGH. I'm not sure if
the ages match up - this would put JGH to be mid 50s to 60?!?!
I tried Googling "Minigol" which seems to be the name of the language he
wrote (like you do, punching tape with an old hole punch while waiting
in the lunch queue... <grin>), but all I got was a lot of misspellings
of "minigolf"!
Oh well.
Best wishes,
Rick.
[lots of footnotes follow!]
* - PLEASE tell me they aren't still inflicting Pascal on poor hapless
students. It's SO useless. Okay, it enforces discipline and makes you
think about what you are doing, but then what? What's written in Pascal?
Maybe everything got stuck over some pointless rule about
one-entry-one-exit to a function, a flaw which actually requires you to
write crap non-intuitive code in order to satisfy this illogical rant.
One, and can you really be stuck to a language that reads "upside down"
because way-back-when the language was implemented at a one-pass
compiler? This isn't way-back-when, sort it.
All considered, I think it would be much better if somebody got off
their advocacy-ass and coded up a drool-proof C [#] compiler [!]. One
that checks bounds, one that laughs at you if you define an array and
then use negative offsets. One that prints out "WTF?!?" every time you
try to assign from *(**(void)*myvar[*ptr++]) or other such unreadable
nonsense that is probably a perfectly valid C statement. A compiler that
will compile any DECENT code into a valid .EXE, absolute, ELF, whatever.
When you can cope with that, you can be let loose on a REAL compiler...
# - Not C++. My uncle wrote a detailed book on C++ programming (several,
in fact) and I'm afraid I've not found anything in C++ that can't be
expressed C. Okay, we'd be calling Modem_PutByte instead of
Modem.PutByte, but same difference. All code turns into a stream of
processor instructions. I guess the C/C++ issue depends upon how
abstract you want to be, or feel is actually necessary/justified. Uncle
Rick said that one of the problems with C++ was the C lurking inside. I
feel C++ is just C-with-bloat. Or, looking at the punctuation abuse,
perhaps ""Bling C". [!]
! - This isn't to say C is perfect. There's a lot of nonsense, like
whether to include <this> or "this", or indirect like.this or
like->this. There are reasons, but it's a pain, as is the TOTAL lack of
bounds checking and such in 99% of compilers. Bounds checking might add
penalties, but I've seen some HORRIBLE things (probably got some in my
own code) that the clumsiest Duplo-level intelligence bounds checking
would have picked up, but never got noticed as the corruption "wasn't
bad enough" to make the flaw obvious.
But on the other hand, pretty much the entirety of certain mainstream
operating systems and most ALL the software supplied with, is written in
C. You could argue this isn't necessarily a good thing. I would
counter-argue, show me the one written in Pascal...
--
Rick Murray, eeePC901 & ADSL WiFI'd into it, all ETLAs!
BBC B: DNFS, 2 x 5.25" floppies, EPROM prog, Acorn TTX
E01S FileStore, A3000/A5000/RiscPC/various PCs/blahblah...