Re: Procedure types and An extended discussion of extensibility

From: [at]} <Rex>
Date: Mon, 06 Dec 2004 16:33:48 -0600

----boundary-LibPST-iamunique-1626471873_-_-
Content-type: text/plain

Fyodor Tkachov wrote:
>Robert, please, by all means, do take care of the fortran programmers. :-)
In the meantime, I am reading a one-semester course (16x2-hr lectures) to 1=
st year physics students after which they are fully comfortable with the ba=
sic structure of BlackBox....


        Sorry, Fyodor, this note is not aimed specifically at you, but I am using your message as a starting point.

        Careful. FORTRAN probably deserves a little more respect, and it offers lessons for the Oberon community. The bad news is that FORTRAN programmers outnumber you. Not only that, but much of the most ancient, crufty FORTRAN code is still reuseable, in spite of its Stone-Age foundation. As bad as FORTRAN is in some respects, there is probably more reuseable code in FORTRAN than in all the Oberon dialects combined. Even worse, you can do calculations with FORTRAN that you may never be able to do with Oberon, CP, or any C derivative.

        Why? Because with rare exceptions, the standards do not break code. Once it's written, it stays written, as long as it does not make use of language extensions. Basically, people could write in FORTRAN, with confidence that the code would still compile years in the future. Furthermore, I can't begin to tell you how many scientists I know who cling to it because (1) they have invested years writing their code, and (2) they can actually read code written in FORTRAN.

        The more code that is written, the worse it is to change it. With the Oberon languages we have a yo-yo effect, where certain features are in and then out, then in again. Do I need to enumerate? Now we are actually talking about discarding procedural parameters, and with it, Campbell's libraries. Folks, even talking about discarding features is the quickest way I know to kill a language. Don't even think of it. And anyone who implements a language had better implement the whole language or none of it.

        It's fine to go on endlessly debating the perfect, minimal mixture of orthogonal features, but it's not fine to penalize people who just want to go about their business writing standards-compliant code. Add features if you want, but don't discard them. You've got this great language. Don't ruin it by trying to make it perfect. I hope I'm misunderstanding.

Sincerely,
Rex Couture, Ph. D.
Dept. of Earth and Planetary Sciences
Campus Box 1169
Washington University in St. Louis
1 Brookings Dr.
St. Louis MO 63130

Voice: (314) 935-4194
Fax: (314) 935-7361
rex{([at]})nowhere.xy
--------------------------------------------

To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xy

To get a list of valid e-mail commands and instructions on their usage, send a message containing the word "help" to the above address.

Send any problem reports or questions related to this email list to the list owner at
   owner-blackbox{([at]})nowhere.xy

Current posting policy:

a) To post you should use the same address by which you are subscribed to the mailing list. That way, the list server will recognize you as subscriber and forward your posting immediately, without creating any overhead.

b) If, for some reason, you cannot post from the address, by which you are subscribed, your message will be moderated to avoid spam. Please understand that moderation will often cause some delay, in particular over weekends or holydays.


----boundary-LibPST-iamunique-1626471873_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEZ5b2RvciBUa2FjaG92IHdyb3RlOlxwYXINCj5S
b2JlcnQsIHBsZWFzZSwgYnkgYWxsIG1lYW5zLCBkbyB0YWtlIGNhcmUgb2YgdGhlIGZvcnRyYW4g
cHJvZ3JhbW1lcnMuIDotKVxwYXINCkluIHRoZSBtZWFudGltZSwgSSBhbSByZWFkaW5nIGEgb25l
LXNlbWVzdGVyIGNvdXJzZSAoMTZ4Mi1ociBsZWN0dXJlcykgdG8gMT1ccGFyDQpzdCB5ZWFyIHBo
eXNpY3Mgc3R1ZGVudHMgYWZ0ZXIgd2hpY2ggdGhleSBhcmUgZnVsbHkgY29tZm9ydGFibGUgd2l0
aCB0aGUgYmE9XHBhcg0Kc2ljIHN0cnVjdHVyZSBvZiBCbGFja0JveC4uLi5ccGFyDQpccGFyDQpc
cGFyDQogICAgICAgIFNvcnJ5LCBGeW9kb3IsIHRoaXMgbm90ZSBpcyBub3QgYWltZWQgc3BlY2lm
aWNhbGx5IGF0IHlvdSwgYnV0IEkgYW0gdXNpbmcgeW91ciBtZXNzYWdlIGFzIGEgc3RhcnRpbmcg
cG9pbnQuXHBhcg0KXHBhcg0KICAgICAgICBDYXJlZnVsLiAgRk9SVFJBTiBwcm9iYWJseSBkZXNl
cnZlcyBhIGxpdHRsZSBtb3JlIHJlc3BlY3QsIGFuZCBpdCBvZmZlcnMgbGVzc29ucyBmb3IgdGhl
IE9iZXJvbiBjb21tdW5pdHkuICBUaGUgYmFkIG5ld3MgaXMgdGhhdCBGT1JUUkFOIHByb2dyYW1t
ZXJzIG91dG51bWJlciB5b3UuICBOb3Qgb25seSB0aGF0LCBidXQgbXVjaCBvZiB0aGUgbW9zdCBh
bmNpZW50LCBjcnVmdHkgRk9SVFJBTiBjb2RlIGlzIHN0aWxsIHJldXNlYWJsZSwgaW4gc3BpdGUg
b2YgaXRzIFN0b25lLUFnZSBmb3VuZGF0aW9uLiAgQXMgYmFkIGFzIEZPUlRSQU4gaXMgaW4gc29t
ZSByZXNwZWN0cywgdGhlcmUgaXMgcHJvYmFibHkgbW9yZSByZXVzZWFibGUgY29kZSBpbiBGT1JU
UkFOIHRoYW4gaW4gYWxsIHRoZSBPYmVyb24gZGlhbGVjdHMgY29tYmluZWQuICBFdmVuIHdvcnNl
LCB5b3UgY2FuIGRvIGNhbGN1bGF0aW9ucyB3aXRoIEZPUlRSQU4gdGhhdCB5b3UgbWF5IG5ldmVy
IGJlIGFibGUgdG8gZG8gd2l0aCBPYmVyb24sIENQLCBvciBhbnkgQyBkZXJpdmF0aXZlLlxwYXIN
ClxwYXINCiAgICAgICAgV2h5PyAgQmVjYXVzZSB3aXRoIHJhcmUgZXhjZXB0aW9ucywgdGhlIHN0
YW5kYXJkcyBkbyBub3QgYnJlYWsgY29kZS4gIE9uY2UgaXQncyB3cml0dGVuLCBpdCBzdGF5cyB3
cml0dGVuLCBhcyBsb25nIGFzIGl0IGRvZXMgbm90IG1ha2UgdXNlIG9mIGxhbmd1YWdlIGV4dGVu
c2lvbnMuICBCYXNpY2FsbHksIHBlb3BsZSBjb3VsZCB3cml0ZSBpbiBGT1JUUkFOLCB3aXRoIGNv
bmZpZGVuY2UgdGhhdCB0aGUgY29kZSB3b3VsZCBzdGlsbCBjb21waWxlIHllYXJzIGluIHRoZSBm
dXR1cmUuICBGdXJ0aGVybW9yZSwgSSBjYW4ndCBiZWdpbiB0byB0ZWxsIHlvdSBob3cgbWFueSBz
Y2llbnRpc3RzIEkga25vdyB3aG8gY2xpbmcgdG8gaXQgYmVjYXVzZSAoMSkgdGhleSBoYXZlIGlu
dmVzdGVkIHllYXJzIHdyaXRpbmcgdGhlaXIgY29kZSwgYW5kICgyKSB0aGV5IGNhbiBhY3R1YWxs
eSByZWFkIGNvZGUgd3JpdHRlbiBpbiBGT1JUUkFOLlxwYXINClxwYXINCiAgICAgICAgVGhlIG1v
cmUgY29kZSB0aGF0IGlzIHdyaXR0ZW4sIHRoZSB3b3JzZSBpdCBpcyB0byBjaGFuZ2UgaXQuICBX
aXRoIHRoZSBPYmVyb24gbGFuZ3VhZ2VzIHdlIGhhdmUgYSB5by15byBlZmZlY3QsIHdoZXJlIGNl
cnRhaW4gZmVhdHVyZXMgYXJlIGluIGFuZCB0aGVuIG91dCwgdGhlbiBpbiBhZ2Fpbi4gIERvIEkg
bmVlZCB0byBlbnVtZXJhdGU/ICBOb3cgd2UgYXJlIGFjdHVhbGx5IHRhbGtpbmcgYWJvdXQgZGlz
Y2FyZGluZyBwcm9jZWR1cmFsIHBhcmFtZXRlcnMsIGFuZCB3aXRoIGl0LCBDYW1wYmVsbCdzIGxp
YnJhcmllcy4gIEZvbGtzLCBldmVuIHRhbGtpbmcgYWJvdXQgZGlzY2FyZGluZyBmZWF0dXJlcyBp
cyB0aGUgcXVpY2tlc3Qgd2F5IEkga25vdyB0byBraWxsIGEgbGFuZ3VhZ2UuICBEb24ndCBldmVu
IHRoaW5rIG9mIGl0LiAgQW5kIGFueW9uZSB3aG8gaW1wbGVtZW50cyBhIGxhbmd1YWdlIGhhZCBi
ZXR0ZXIgaW1wbGVtZW50IHRoZSB3aG9sZSBsYW5ndWFnZSBvciBub25lIG9mIGl0LlxwYXINClxw
YXINCiAgICAgICAgSXQncyBmaW5lIHRvIGdvIG9uIGVuZGxlc3NseSBkZWJhdGluZyB0aGUgcGVy
ZmVjdCwgbWluaW1hbCBtaXh0dXJlIG9mIG9ydGhvZ29uYWwgZmVhdHVyZXMsIGJ1dCBpdCdzIG5v
dCBmaW5lIHRvIHBlbmFsaXplIHBlb3BsZSB3aG8ganVzdCB3YW50IHRvIGdvIGFib3V0IHRoZWly
IGJ1c2luZXNzIHdyaXRpbmcgc3RhbmRhcmRzLWNvbXBsaWFudCBjb2RlLiAgQWRkIGZlYXR1cmVz
IGlmIHlvdSB3YW50LCBidXQgZG9uJ3QgZGlzY2FyZCB0aGVtLiAgWW91J3ZlIGdvdCB0aGlzIGdy
ZWF0IGxhbmd1YWdlLiAgRG9uJ3QgcnVpbiBpdCBieSB0cnlpbmcgdG8gbWFrZSBpdCBwZXJmZWN0
LiAgSSBob3BlIEknbSBtaXN1bmRlcnN0YW5kaW5nLlxwYXINClxwYXINClNpbmNlcmVseSxccGFy
DQpSZXggQ291dHVyZSwgUGguIEQuXHBhcg0KRGVwdC4gb2YgRWFydGggYW5kIFBsYW5ldGFyeSBT
Y2llbmNlc1xwYXINCkNhbXB1cyBCb3ggMTE2OVxwYXINCldhc2hpbmd0b24gVW5pdmVyc2l0eSBp
biBTdC4gTG91aXNccGFyDQoxIEJyb29raW5ncyBEci5ccGFyDQpTdC4gTG91aXMgTU8gNjMxMzBc
cGFyDQpccGFyDQpWb2ljZTogICgzMTQpIDkzNS00MTk0XHBhcg0KRmF4OiAgKDMxNCkgOTM1LTcz
NjFccGFyDQpyZXhAbGV2ZWUud3VzdGwuZWR1XHBhcg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQpccGFyDQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMg
bWFpbGluZyBsaXN0LCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3JkICJ1bnN1YnNj
cmliZSIgdG86XHBhcg0KICAgYmxhY2tib3gtcmVxdWVzdEBvYmVyb24uY2hccGFyDQpccGFyDQpU
byBnZXQgYSBsaXN0IG9mIHZhbGlkIGUtbWFpbCBjb21tYW5kcyBhbmQgaW5zdHJ1Y3Rpb25zIG9u
IHRoZWlyIHVzYWdlLCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3JkICJoZWxwIiB0
byB0aGUgYWJvdmUgYWRkcmVzcy5ccGFyDQpccGFyDQpTZW5kIGFueSBwcm9ibGVtIHJlcG9ydHMg
b3IgcXVlc3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbWFpbCBsaXN0IHRvIHRoZSBsaXN0IG93bmVy
IGF0XHBhcg0KICAgb3duZXItYmxhY2tib3hAb2Jlcm9uLmNoXHBhcg0KXHBhcg0KQ3VycmVudCBw
b3N0aW5nIHBvbGljeTpccGFyDQpccGFyDQphKSBUbyBwb3N0IHlvdSBzaG91bGQgdXNlIHRoZSBz
YW1lIGFkZHJlc3MgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVkIHRvIHRoZSBtYWlsaW5nIGxp
c3QuIFRoYXQgd2F5LCB0aGUgbGlzdCBzZXJ2ZXIgd2lsbCByZWNvZ25pemUgeW91IGFzIHN1YnNj
cmliZXIgYW5kIGZvcndhcmQgeW91ciBwb3N0aW5nIGltbWVkaWF0ZWx5LCB3aXRob3V0IGNyZWF0
aW5nIGFueSBvdmVyaGVhZC5ccGFyDQpccGFyDQpiKSBJZiwgZm9yIHNvbWUgcmVhc29uLCB5b3Ug
Y2Fubm90IHBvc3QgZnJvbSB0aGUgYWRkcmVzcywgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVk
LCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBtb2RlcmF0ZWQgdG8gYXZvaWQgc3BhbS4gUGxlYXNlIHVu
ZGVyc3RhbmQgdGhhdCBtb2RlcmF0aW9uIHdpbGwgb2Z0ZW4gY2F1c2Ugc29tZSBkZWxheSwgaW4g
cGFydGljdWxhciBvdmVyIHdlZWtlbmRzIG9yIGhvbHlkYXlzfX0AIHdobyA=


----boundary-LibPST-iamunique-1626471873_-_---
Received on Mon Dec 06 2004 - 23:33:48 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:28:29 UTC