home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.arch:10785 comp.lang.misc:3715
- Newsgroups: comp.arch,comp.lang.misc
- Path: sparky!uunet!usc!sdd.hp.com!news.cs.indiana.edu!noose.ecn.purdue.edu!mentor.cc.purdue.edu!pop.stat.purdue.edu!hrubin
- From: hrubin@pop.stat.purdue.edu (Herman Rubin)
- Subject: Re: how to advocate new software/hardware features (Re: Hardware Support for Numeric Algorithms)
- Message-ID: <BxtA6v.CE8@mentor.cc.purdue.edu>
- Sender: news@mentor.cc.purdue.edu (USENET News)
- Organization: Purdue University Statistics Department
- References: <1992Nov14.022705.15675@sal.wisc.edu> <BxpprG.HKu@mentor.cc.purdue.edu> <Bxs63J.BxA@exnet.co.uk>
- Date: Mon, 16 Nov 1992 13:44:54 GMT
- Lines: 33
-
- In article <Bxs63J.BxA@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
- >In article <BxpprG.HKu@mentor.cc.purdue.edu> hrubin@mentor.cc.purdue.edu (Herman Rubin) writes:
- >>And how would you handle cases where operations have multiple results,
- >>of different types? This should have been in all programming languages
- >>on day 2, and is now only clumsily handled in some. How would you
- >>handle simple operators which those who produced the languages either
- >>did not understand, did not think important, or just plain ignored?
-
- ......................
-
- >Or you put these features in the library. (Just like RISC.)
-
- >Which is what C does.
-
- >I think even C is starting to bloat, but it is still quite honest in
- >relegating special features---that won't be used/available on *nearly
- >every* machine or in *a lot* of code---to the libraries.
-
- >So, returning multiple answers in C is easy if ugly. Use pointer
- >arguments, or return a structure or point to one. It needn't be
- >expensive at run time.
-
- But it is. The operations often use register arguments and the results
- are wanted in registers. To avoid real problems with separate compilations,
- it would be necessary to have a substantial inline library, which is really
- a part of the language installation. I have not seen any implementation of
- C which allows a register struct, although I suspect that there are such.
- But if the registers wanted are not adjacent, I can see a real problem.
- --
- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907-1399
- Phone: (317)494-6054
- hrubin@snap.stat.purdue.edu (Internet, bitnet)
- {purdue,pur-ee}!snap.stat!hrubin(UUCP)
-