Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!gatech!newsfeed.internetmci.com!howland.reston.ans.net!nntp.coast.net!col.hp.com!news.dtc.hp.com!hplntx!hplntx.hpl.hp.com!gjr
From: gjr@hplgr2.hpl.hp.com (Guillermo (Bill) J. Rozas)
Subject: Re: R5RS?
Sender: news@hpl.hp.com (HPLabs Usenet Login)
Message-ID: <GJR.96Mar4103045@hplgr2.hpl.hp.com>
In-Reply-To: blume@zayin.cs.princeton.edu's message of 03 Mar 1996 18:32:48 GMT
Date: Mon, 4 Mar 1996 18:30:45 GMT
Reply-To: gjr@hpl.hp.com
References: <4gc83r$617@news.simplex.nl> <4gfrfi$m7u@camelot.ccs.neu.edu>
	<leavens.824995212@larch> <4gi3p0$kvh@agate.berkeley.edu>
	<leavens.825012724@larch> <GJR.96Feb22191305@hplgr2.hpl.hp.com>
	<BLUME.96Feb27152646@zayin.cs.princeton.edu>
	<GJR.96Feb28133746@hplgr2.hpl.hp.com>
	<BLUME.96Feb29105552@zayin.cs.princeton.edu>
	<87n35zkxfe.fsf@organon.serpentine.com>
	<BLUME.96Mar3133248@zayin.cs.princeton.edu>
Nntp-Posting-Host: hplgr2.hpl.hp.com
Organization: Hewlett-Packard Laboratories, Palo Alto, CA
Lines: 28

In article <BLUME.96Mar3133248@zayin.cs.princeton.edu> blume@zayin.cs.princeton.edu (Matthias Blume) writes:

|   There are two reasons why you might want to patch up a running system:
|
|   1. Because it is broken.  This will happen much less frequently in a
|   strongly typed, safe language with a compiler that doesn't let you get
|   away with certain nonsense.

You mean statically typed, not strongly typed nor safe.

At any rate, I think it is marginally less frequently, and when we are
trading margins I'll always side on the side of more flexibility and
power, since I can take care of the other myself, but I can't undo the
damage done to satisfy a particular algorithm in a compiler.  I hate
language design by inclusion-of-state-of-the-art-algorithm.

|   2. Because being able to be patched is part of its functionality.
|   IMO, in that case this functionality should be designed explicitely
|   into the system.  There is no reason why you can't patch data
|   structures of a system written in, say, ML on the fly -- as long as
|   such a thing was foreseen and designed into the product.

Wow, you must really be prescient.  Almost every time that I have to
work with a program that I wrote 6 months or more earlier I find a
myriad ways in which my original design was shortsighted.
You must be much smarter than I am to think of all such possibilities
ahead of time.

