Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!decwrl!amdcad!crackle!tim From: tim@crackle.amd.com (Tim Olson) Newsgroups: comp.sys.mac Subject: Re: New Mac Rumours Message-ID: <24658@amdcad.AMD.COM> Date: 28 Feb 89 17:34:43 GMT References: <41a2364a.a590@mag.engin.umich.edu> <70755@ti-csl.csc.ti.com> <8513@polyslo.CalPoly.EDU> <15564@oberon.USC.EDU> Sender: news@amdcad.AMD.COM Reply-To: tim@amd.com (Tim Olson) Organization: Advanced Micro Devices, Inc. Sunnyvale CA Lines: 30 Summary: Expires: Sender: Followup-To: In article <15564@oberon.USC.EDU> kurtzman@pollux.usc.edu (Stephen Kurtzman) writes: | In article <8513@polyslo.CalPoly.EDU> dorourke@polyslo.CalPoly.EDU (David M. O'Rourke) writes: | > I hope this helps. But if you look at processor design you can sometimes | >see what language it was originally designed for by the instruction set | >it has. | | Conversely, if you look at a language you can sometimes see for which processor | it was designed. As noted by others, c was originally designed for the PDP-11. | Because the PDP-11 has pre-decrement indirect, and post-increment indirect | addressing modes, c has ++ and -- constructs to take advantage of the PDP-11 | architecture. I believe that the pre- and post- inc/dec operators were already present in BCPL and B, and that is where they came from. However, the implicit conversion from float to double in (K&R) C for all floating-point operations was due to the PDP-11, on which it was difficult to switch between single and double-precision modes. | Likewise, the car and cdr of LISP have their analogues in the | architecture of the machine on which LISP was first implemented. There are | likely other examples, but I'll leave that to the language specialists. Not really -- CAR stands for "Contents of Address Register" and CDR stands for "Contents of Decrement Register" on the IBM machine that the first LISP interpreter was written on, and definitely are not analogues to the car and cdr operations. Lisp machines came much later. -- Tim Olson Advanced Micro Devices (tim@crackle.amd.com)