From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c9d5fc258548b22a X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!postnews.google.com!k16g2000vbq.googlegroups.com!not-for-mail From: Maciej Sobczak Newsgroups: comp.lang.ada Subject: Re: How do I write directly to a memory address? Date: Tue, 1 Mar 2011 13:45:07 -0800 (PST) Organization: http://groups.google.com Message-ID: <4806cba6-7087-407f-a078-66326ba9d455@k16g2000vbq.googlegroups.com> References: <67063a5b-f588-45ea-bf22-ca4ba0196ee6@l11g2000yqb.googlegroups.com> <8r86vgFc3uU1@mid.individual.net> <19fh1chm74f9.11cws0j5bckze.dlg@40tude.net> <5d9bd120-4953-4fb1-a890-27267245e954@8g2000prt.googlegroups.com> <544076dc-3357-4d8d-bfeb-7ae46a88b931@w19g2000yqa.googlegroups.com> <9bt91saw1vao$.9o7azvb4ina6$.dlg@40tude.net> <1aragtrfhwg4w$.1c1eyyf8254pw$.dlg@40tude.net> NNTP-Posting-Host: 83.3.40.82 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: posting.google.com 1299015907 28985 127.0.0.1 (1 Mar 2011 21:45:07 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 1 Mar 2011 21:45:07 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: k16g2000vbq.googlegroups.com; posting-host=83.3.40.82; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13,gzip(gfe) Xref: g2news2.google.com comp.lang.ada:18671 Date: 2011-03-01T13:45:07-08:00 List-Id: On 9 Lut, 22:38, "Dmitry A. Kazakov" wrote: > > No, because formal and actual are distinct objects in C. > > So what? It seems that you are confusing parameter passing mode and > substitution. It seems that you are trying to use the Ada terminology with regard to C, which has its own terminology. And, by the way, its own standard. > > For sure the word "constructor" does not appear in the C standard, not > > even once, so I would not bet my money on this requirement. > > I used the term constructor because semantically this is not an assignment. As I have already pointed out some posts before, your recognized style of discussing is to warp definitions indefinitely just to prove your point, whatever it is. The problem is - C has its own standard and that standard says *black on white* that this is an assignment. The standard says so. Amen. End of story. If you say something else, then you are going nowhere. > Assignment destroys the target and then constructs new object. No. Assignment does not destroy anything and does not construct anything. Especially in the languages that has no destructors and no constructors. The standard says so. Ironically, you got it wrong not only for C (by completely ignoring its own standard), but you have even got it wrong for Ada (5.2/1): "An assignment_statement replaces the current value of a variable with the result of evaluating an expression." No destruction and no construction is mentioned in this chapter. Not even once. And it would be surprising to see them there, because in Ada, as in C, the identity of the mutable object is preserved across assignment. Atomicity of the process is yet another story. You would have to invent a lot of additional stuff up in order for your theory to be self consistent. > No, I am applying a typed language terminology. Your own terminology? Destruction and construction are processes that do not need to occur in order for the assignment to take place and this has nothing to do with any given language being typed or not. You are just making things up now. We are going nowhere with this discussion. -- Maciej Sobczak * www.msobczak.com * www.inspirel.com