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.7 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!uunet!lll-winken!lll-tis!ames!ncar!mailrus!uflorida!gatech!hubcap!billwolf From: billwolf@hubcap.clemson.edu (William Thomas Wolfe,2847,) Newsgroups: comp.lang.ada Subject: Re: Garbage Collection Message-ID: <3888@hubcap.UUCP> Date: 14 Dec 88 17:43:35 GMT References: <864@quintus.UUCP> Sender: news@hubcap.UUCP Reply-To: wtwolfe@hubcap.clemson.edu List-Id: >From article <864@quintus.UUCP>, by ok@quintus.uucp (Richard A. O'Keefe): > In article <3865@hubcap.UUCP> billwolf@hubcap.clemson.edu writes: >> Basically, I charge garbage collection with the same crime that >> the GOTO was charged with: its sole function is to facilitate >> UNDISCIPLINED programming. From Tremblay and Sorenson, 1985: > > This is completely back-to-front. Doing your own storage management > is like doing your own stack management instead of using procedure calls. Procedure calls are used to manage the complexity of creating the structure and of maintaining it. They should also be used to manage its destruction. This is clear and consistent, and promotes readable and reliable operations on a well-defined structure with well-defined space/time properties. > I think it would be very hard to accuse functional programming languages > like ML of providing an _un_disciplined environment. [...] > Storage management is particularly easy in a language without > side effects to data structures. OK, try getting a referentially transparent language to handle systems which are not static, but change over time. With increased power comes increased responsibility. Bill Wolfe wtwolfe@hubcap.clemson.edu