←back to thread

244 points rbanffy | 1 comments | | HN request time: 0s | source
Show context
POSSIBLE_FACT ◴[] No.44603645[source]
Absolutely loved when I randomly caught an episode of Computer Chronicles back in the old time days.
replies(2): >>44603765 #>>44608696 #
rbanffy ◴[] No.44603765[source]
I think that, by now, I have watched every episode. He was the Bill Gates we needed.
replies(3): >>44603804 #>>44603845 #>>44604028 #
whobre ◴[] No.44603845[source]
He was nothing like BG. Gary was an inventor, educator and most of all a visionary. He hated running a business, even though he started DRI after failing to convince Intel to buy CP/M.

Yes, there are quite a few videos on YouTube about him, named “The man who should have been Bill Gates” but that’s just click baiting. Watch the special episode of “The Computer Chronicles” about Gary Kildall and see what his friends and business associates say about him.

replies(7): >>44603943 #>>44603983 #>>44604145 #>>44604163 #>>44604595 #>>44604601 #>>44604876 #
terabyterex ◴[] No.44604145[source]
This paints Bill Gates as not a tech person and a business first person, which is not true. He got a BASIC compiler on the altair which MITS thought couldn't be done. He helped Wozniak implement a version of BASIC supporting floating point numbers. Gates didn't even want to take Microsoft public. They had to convince him. Ballmer was the biggest businessman in the bunch. Hell, he was the one that suggested kidall since Microsoft wasn't in the OS business.
replies(3): >>44604243 #>>44604605 #>>44604689 #
rbanffy ◴[] No.44604605[source]
> BASIC compiler

Interpreter - an entirely different kind of animal. Microsoft didn't get a BASIC compiler until much later.

> He helped Wozniak implement a version of BASIC supporting floating point numbers.

No. He sold Apple a BASIC, then used it as leverage to prevent Apple from making a BASIC for the Macintosh.

> Ballmer was the biggest businessman in the bunch.

He suggested cutting Paul Allen's family off when Allen was battling cancer.

replies(1): >>44606194 #
WalterBright ◴[] No.44606194[source]
Um, it is necessary to compile a program before being able to interpret it. I don't know how early BASICs were implemented, but the usual method is to compile it to some sort of intermediate representation, and then interpret that representation.

D's compile time function execution engine works that way. So does the Javascript compiler/interpreter engine I wrote years ago, and the Java compiler I wrote eons ago.

The purpose to going all the way to generating machine code is the result often runs 10x faster.

replies(5): >>44607379 #>>44607380 #>>44607445 #>>44608493 #>>44609120 #
stevekemp ◴[] No.44607380{4}[source]
It is not necessary to compile a program, in the general case, before executing it.

Many programming languages parse their program to an AST then walk that AST interpretting as they go. But for BASIC you can parse/execute statement by statement - no need to parse the whole program ahead of time, and certainly zero need to compile to either machine code or any internal representation.

Remember at the time we're talking about 64k was a lot of RAM. Some machines had less.

replies(1): >>44608195 #
WalterBright ◴[] No.44608195{5}[source]
The parsing, even if line by line as necessary, is still compiling.
replies(1): >>44608788 #
vidarh ◴[] No.44608788{6}[source]
In 45 years of writing software, I've never before seen anyone call tokenizing a BASIC program compilation. It's decidedly not common usage.
replies(1): >>44608967 #
WalterBright ◴[] No.44608967{7}[source]
I've been writing compilers for 45 years now. Tokenizing is a big part of every textbook on compilers. To resolve expressions (which are recursive in nature) it would have had to do more than just tokenizing. While this isn't hard at all, it's "parsing" which is also qualifying it as a compiler.

I.e. the basic program was lexing and parsing. It's a compiler. A very simple one, sure, but a compiler.

replies(2): >>44609101 #>>44609849 #
1. vidarh ◴[] No.44609101{8}[source]
Yes, but tokenization on its own is not compilation any more than whiskers are a cat just because a cat has them.

"Nobody" uses it that way, and language is defined by use.