[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Low-level vs. High-level programming (was My First Computer)
- Subject: Re: Low-level vs. High-level programming (was My First Computer)
- From: pausch@saaf.se (Paul Schlyter)
- Date: Fri, 25 Jul 2003 09:14:17 +0000 (UTC)
- Newsgroups: comp.sys.apple2
- Organization: Svensk Amat|rAstronomisk F|rening
- References: <Mt3Ua.17039$Qe5.5814@nwrddc03.gnilink.net> <20030725020918.24310.00000421@mb-m16.aol.com>
- Xref: archiver1.google.com comp.sys.apple2:33269
In article <20030725020918.24310.00000421@mb-m16.aol.com>,
Michael J. Mahon <mjmahon@aol.com> wrote:
> M. Pender replied:
.......................
>> That is the standard I/O implementation of ForTran 77 -- which leads
>> me to believe (but does not prove) that Apple Pascal was written in
>> Fortran, whether or not Apple had a commercial ForTran product in the
>> box at that point in time.
>
> I can assure you that it is not written in FORTRAN--in fact quite the
> opposite: Apple FORTRAN is written in Pascal.
This agrees with what I have heard.
> Apple Pascal was bootstrapped through the ETH Zurich Pascal
> implementation, originally running on the CDC 6400.
It must have been quite hard to implement Pascal on the CDC 6400,
since Pascal is a stack-based languages (with variables allocated on
the stack, recursive procedures, etc) but the CDC 6400 hardware
lacked a hardware stack (like many other mainframes of that time).
The CDC 6400 was much more suitable for running FORTRAN programs
since in FORTRAN recursion was not allowed. Calling a subroutine on
the CDC 6400 was usually acomplished like this: store the return
address at the first word (the CDC 6400 had 60-bit words) of the
subroutine, then do a jump to the second word of the subroutine.
WHen the subroutine was about to return, it did an indirect jump
to the first word of itself. With such a scheme, attempting to
do recursive calls would quickly create havoc.
The CDC 6400 was btw the world's first "supercomputer", designed by
Seymour Cray (who later left CDC to create his own company, Cray
Research). As opposed to the predominant IBM mainframe of those
days, the CDC 6400 was designed for number crunching. Its number
crunching power was equivalent to perhaps a 20 MHz 80386 with an
accompanying 80387. However, the CDC 6400 appeared more than 20
years before the 80386.
Some 10+ years after the CDC 6400, the Cray-1 supercomputer
appeared, which had a computing power equivalent to approx. a
500 MHz Pentium-3. However, the clock frequency of the Cray-1
was only 80 MHz.... The Cray-1 too predated the Pentium-3 by
about 20 years.
> When UCSD Pascal was completed, FORTRAN was implemented on top
> of the same P-code interpreter, and the FORTRAN compiler also
> runs in the Pascal P-code enviroment.
--
----------------------------------------------------------------
Paul Schlyter, Grev Turegatan 40, SE-114 38 Stockholm, SWEDEN
e-mail: pausch at stockholm dot bostream dot se
WWW: http://www.stjarnhimlen.se/
http://home.tiscali.se/pausch/