home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.misc
- Path: sparky!uunet!ornl!rsg1.er.usgs.gov!darwin.sura.net!spool.mu.edu!news.nd.edu!mentor.cc.purdue.edu!hrubin
- From: hrubin@mentor.cc.purdue.edu (Herman Rubin)
- Subject: Re: Accessing the hardware directly (Was: Pointers)
- Message-ID: <BxsCMz.Mu1@mentor.cc.purdue.edu>
- Organization: Purdue University Statistics Department
- References: <mwm.2n3n@contessa.palo-alto.ca.us> <BxrK6x.A04@mentor.cc.purdue.edu> <92Nov15.195430est.47880@neat.cs.toronto.edu>
- Date: Mon, 16 Nov 1992 01:40:10 GMT
- Lines: 36
-
- In article <92Nov15.195430est.47880@neat.cs.toronto.edu> tlai@cs.toronto.edu (Tony Wen Hsun Lai) writes:
- >In article <BxrK6x.A04@mentor.cc.purdue.edu> hrubin@pop.stat.purdue.edu (Herman Rubin) writes:
- >[stuff deleted]
- >>I do not see how any system of references will enable writing
-
- >> *fill(*descriptor)
-
- >>any faster. Nor do I trust compiler writers (or government bureaucrats.)
- >>And if the lack of pointers in the languages causes hardware to elide pointers
- >>in favor of something clumsy like call_by_name, searching the name file, we
- >>all lose. I have also pointed out that I want to use this in cases in which
- >>the calling routine does not even know the name. True, you could read the
- >>name, but is that any easier than reading the address?
-
- >I guess you don't like pass by reference? Pass by reference is almost
- >inevitably implemented using pointers, but doesn't involve _explicit_
- >pointers set up by the programmer. You may not need or appreciate
- >abstractions for your programming, but if you look at the evolution of
- >language design, abstractions are important for designing and writing very
- >large, maintainable programs.
-
- What is my notation other than calling the function by an indirect reference,
- and passing the argument similarly? Now I can put the argument reference on
- the stack by first reading it into a register and then putting that register
- on the stack, but what is gained by that? And if the machine does not have
- a reasonable way to call a function by indirect reference, the only way that
- it could be done is by placing the address in the code for the function call
- at run time, and this, or any other, modification of code at run time is,
- I believe, considered quite objectionable. Fortran calls only by reference,
- and has finally come around to realizing that indirect references (pointers)
- can improve the situation.
- --
- 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)
-