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=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2925b133078d1557 X-Google-Attributes: gid103376,public From: clines@delete_this.airmail.net (Kevin Cline) Subject: Re: Flexible Strings (was Equality operator...) Date: 1997/05/07 Message-ID: <53F35740C6EF076C.14BEEF8227919F71.39E2B6FED1F30314@library-proxy.airnews.net>#1/1 X-Deja-AN: 239899790 References: <9704301422.AA07755@most> <5kocg6$hln@bcrkh13.bnr.ca> X-Orig-Message-ID: <33750903.8481848@news.airmail.net> Organization: INTERNET AMERICA NNTP-Proxy-Relay: library.airnews.net Newsgroups: comp.lang.ada Date: 1997-05-07T00:00:00+00:00 List-Id: In article , Robert Dewar wrote: >So no language standard can meaninfuly specify formal semantiocs for >what deallocation might mean, beyond specifying that reference to freed >storage is in an appropriate sense incorrect. > >So Ada is no different from C or Pascal or any other lanuage here. I suspect >that Kevin is not the kind of person who spends his time studying formal >standards, but if you want to follow this up, for example go look at the >definition of Dispose in the ANSI Pascal standard. I was a member of ANSI X3H3 (PHIGS) for two years. I read the Ada'83 standard cover to cover. I've read most of the C++ DWP. Perhaps there is not a lot of difference in theory between Ada and C storage management, but there is a huge practical difference. In C or C++, the application programmer can take complete control of the allocation process in a couple of ways. In C++, new and delete can be redefined globally or on a class-by-class basis. Additionally, the compiler vendor's implementation of malloc and free can be replaced with one more carefully tuned to the particular application. Although not mandated by the standard, almost all C compilers do link malloc and free from their run-time library, and replacement implementations can be linked instead. Few Ada compilation systems are so open.