Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site frog.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!cybvax0!frog!rfm From: rfm@frog.UUCP (Bob Mabee, Software) Newsgroups: net.lang.c Subject: Re: Re: Float Double Parameters Message-ID: <844@frog.UUCP> Date: Tue, 22-Apr-86 14:58:40 EST Article-I.D.: frog.844 Posted: Tue Apr 22 14:58:40 1986 Date-Received: Sat, 26-Apr-86 03:19:22 EST References: <5216@alice> <139200025@uiucdcsb> Reply-To: rfm@frog.UUCP (Robert Mabee) Organization: Superfrog Heaven [ CRDS, Framingham MA ] Lines: 14 Keywords: BCPL Summary: history is still confused In article <139200025@uiucdcsb> kenny@uiucdcsb.CS.UIUC.EDU writes: > When BCPL was built for the >635, it borrowed the existing Fortran library and hence had to adopt the >convention that all float's are promoted to double's for parameter passing. When DMR put an obsolete version of BCPL on the GE 645, it had no support for floating-point operations. We added floating-point operators and constants during the port from CTSS to the 360. Later I wrote a new code generator for the GE 645 (the first BCPL to generate binary directly), and added the floating-point operators here too, and transcendentals written in BCPL. Other functions would have come from the PL/I Multics environment, which did support single precision. In any case, BCPL is typeless and would not have known to convert number formats on function calls.