[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: My First Computer (was Computing Editorial)
Lee Hart wrote:
>> I think the big downfall of BASIC is its lack of extensibility.
>> It's great to start with a minimal set of keywords; but you quickly
>> want more capability. Adding it with GOSUBs quickly produces a mess.
>> So, I think what you want is a way to extend the language as you
>> learn, like LOGO and FORTH.
Carl Gundel replied:
> This was true of BASIC only until the mid '80s, when BASICs began
> incorporating user definable functions and subs. Most versions of
> BASIC today do have this feature.
Yes, indeed. Modern BASICs have so many features that they aren't BASIC
any more. The extra features clutter up the language so that it isn't at
all easy to learn any more. And, they aren't fast, or efficient, and no
longer run on very small machines.
I think part of the success of the early microcomputers (like the Apple
II, Radio Shack TRS-80, Commodore 64, Atari 800 etc.) was that they came
with BASICs that were simple enough to be easy to learn, yet
sufficiently powerful to do useful things. They had a good balance
between ease of use and performance.
> I think this is an important feature, but it certainly wasn't needed
> for me to get started when I learned BASIC. In fact, too many fancy
> features probably would have scared me off. ;-)
Exactly my point!
> Many people who enjoy programming for fun will never do it to earn a
> living, and IMHO it's fine to have a language which can accomodate
> the casual tinkerers as long as it can also accomodate more advanced
> students. Learning BASIC early on didn't stop me from learning Forth,
> C, Smalltalk and Java later.
I agree completely. In fact, when learning is also easy and fun, people
do a lot more of it. The existence of BASIC *encouraged* me to learn
other languages!
> As far as BASIC being made extensible in a fashion like Logo or Forth,
> it wouldn't be BASIC anymore.
This could be true. The extensions could totally alter the language
until it became unrecognizable. However, as a beginner I can recall my
frustration with having to give repeated strings of code meaningless
names (like GOSUB 12340 instead CLEARBUFFER). It felt like even simple
BASICs should have had a way to define new keywords just as you can
define new variables. I really took to FORTH because it had this
ability.
That's why I am thinking that "my first computer" should have LOGO,
BASIC, and C. LOGO is good for really young childrend, and lets you play
with an extensible language. BASIC lets you write programs immediately.
C lets you move to a mainstream language with more power, but that also
requires a lot more knowledge and sophistication.
--
Lee A. Hart Ring the bells that still can ring
814 8th Ave. N. Forget your perfect offering
Sartell, MN 56377 USA There is a crack in everything
leeahart_at_earthlink.net That's how the light gets in - Leonard Cohen