Re: [BLACKBOX] Read-only IN parameters for all data types

From: [at]} <Aubrey.McIntosh{>
Date: Thu, 21 Feb 2008 09:31:48 -0600

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

On Thu, Feb 21, 2008 at 5:43 AM, Oleg N. Cher <allot{([at]})nowhere.xy
> Dear Aubrey,
>

>
> By the way, so often it turns out, that a first sight at the Oberon
> is biassed. Why, do you think, so?
>

I notice this also. I have puzzled over it for a long time.

I just read the quote:
"There are two ways of constructing a software design: One way is to
make it so simple that there are obviously no deficiencies, and the
other way is to make it so complicated that there are no obvious
deficiencies."
--C. A. R. Hoare

and I put this quote together with one of my own personal experiences
from some time ago. In 1969 there was a model 33 teletype in the math
class in my (American) high school. It was connected to the GE
timesharing system, and offered FORTRAN and Algol-60. I learned both,
but had a strong preference for Algol, because I could comprehend it.

Another student and I ended up visiting GE and talking with some old
men. One of them became very interested when he learned that I liked
Algol and he asked why. I was too embarrassed to tell the real
reason, I did not yet have my ideas of conceptual accessibility, nor
the life knowledge that people who are really smart are the ones who
are unafraid to say "I don't understand." I am convinced that I
missed a great opportunity that day.

I think the seeds to understand are evident somewhere in that
anecdote, just out of my reach.

> >Here, if the programmer tries to assign an "in" variable, there are
> >design choices. One choice for the (language) design is that it is an
> >error. The other choice is that it is just a "free" scratch variable.

>
> >If you pass a pointer as IN, can you change the dereferenced data?

>
> Of course. Such use "IN" is represented probable.
> It describes the constant pointer, but the data which it specifies,
> can be changed. It can confuse a little, whether not so?
>
>

>
> This "serious ideas" are not, It's just a dream to have
> a possibility to write programs once, and build to be
> runned in any environment. All specific features must be
> hidden in appropriate modules, and all this will be
> penetrated with the general uniform interface.

I was very attracted to Oberon. I was having discussions someone who
would become my dissertation adviser and we talked in the framework
that writing allows the transmission of thoughts through both distance
and through time. This idea is "foundational." That is, it is an
idea underneath much of the discussions we have had.

Oberon came to my awareness in that epoch, and I had the sense that MY
DATA could be ported into the future on a CD ROM and I would continue
to be able to use it, even though the computers evolved and the
environment around me disappeared. This promise has been largely
realized. I have been reading a CD that I made in 1998 that has some
source and binaries for SPARC and SGI machines on them. I'm reading
it on an Intel machine. Things have finally become rational, in that
my data is the focus, and the machine is "only" an appliance.


>
> But people like to create own programming languages
> too strongly. May also I will create one Oberon subset? ;-)
>
>

Yes. When it was more obvious that I'm just a wannabe, I offered
advice to change the language to the newsgroup. These suggestions
came from others as well on a frequent basis. They were (properly)
very strongly rejected. Now, I have practiced some karate and have
been exposed to a discipline that has remained consistent across
millenia and which has a corresponding strictness about unauthorized
change. I think this discussion has the right balance --- not change
Oberon itself, and not change a dozen interaction design elements, but
look a one single change, implement it. The next step that I see in
the publications from ETH is to measure some system metric with both
options. I was looking at the .Obj file structure in "Project Oberon"
and Wirth laid out two possibilities to deal with the relocation
information on imported procedures. He did an astonishing thing: he
wrote two version of the compiler / linker and reported measurements.



>
>
> Oleg N. Cher,
> Colossoft Research.
> allot{([at]})nowhere.xy
> 2008-02-21
>


-- 
-- 
Aubrey McIntosh, Ph.D.
1502 Devon Circle
Austin TX 78723-1814
http://home.grandecom.net/~amcintosh/aubrey/Search/
----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy----boundary-LibPST-iamunique-1020673610_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIE9uIFRodSwgRmViIDIxLCAyMDA4IGF0IDU6NDMg
QU0sIE9sZWcgTi4gQ2hlciA8YWxsb3RAdWtyLm5ldD4gd3JvdGU6XHBhcg0KPiBEZWFyIEF1YnJl
eSxccGFyDQo+XHBhcg0KXHBhcg0KPlxwYXINCj4gIEJ5IHRoZSB3YXksIHNvIG9mdGVuIGl0IHR1
cm5zIG91dCwgdGhhdCBhIGZpcnN0IHNpZ2h0IGF0IHRoZSBPYmVyb25ccGFyDQo+ICBpcyBiaWFz
c2VkLiBXaHksIGRvIHlvdSB0aGluaywgc28/XHBhcg0KPlxwYXINClxwYXINCkkgbm90aWNlIHRo
aXMgYWxzby4gIEkgaGF2ZSBwdXp6bGVkIG92ZXIgaXQgZm9yIGEgbG9uZyB0aW1lLlxwYXINClxw
YXINCkkganVzdCByZWFkIHRoZSBxdW90ZTpccGFyDQoiVGhlcmUgYXJlIHR3byB3YXlzIG9mIGNv
bnN0cnVjdGluZyBhIHNvZnR3YXJlIGRlc2lnbjogT25lIHdheSBpcyB0b1xwYXINCm1ha2UgaXQg
c28gc2ltcGxlIHRoYXQgdGhlcmUgYXJlIG9idmlvdXNseSBubyBkZWZpY2llbmNpZXMsIGFuZCB0
aGVccGFyDQpvdGhlciB3YXkgaXMgdG8gbWFrZSBpdCBzbyBjb21wbGljYXRlZCB0aGF0IHRoZXJl
IGFyZSBubyBvYnZpb3VzXHBhcg0KZGVmaWNpZW5jaWVzLiJccGFyDQotLUMuIEEuIFIuIEhvYXJl
XHBhcg0KXHBhcg0KYW5kIEkgcHV0IHRoaXMgcXVvdGUgdG9nZXRoZXIgd2l0aCBvbmUgb2YgbXkg
b3duIHBlcnNvbmFsIGV4cGVyaWVuY2VzXHBhcg0KZnJvbSBzb21lIHRpbWUgYWdvLiAgSW4gMTk2
OSB0aGVyZSB3YXMgYSBtb2RlbCAzMyB0ZWxldHlwZSBpbiB0aGUgbWF0aFxwYXINCmNsYXNzIGlu
IG15IChBbWVyaWNhbikgaGlnaCBzY2hvb2wuICBJdCB3YXMgY29ubmVjdGVkIHRvIHRoZSBHRVxw
YXINCnRpbWVzaGFyaW5nIHN5c3RlbSwgYW5kIG9mZmVyZWQgRk9SVFJBTiBhbmQgQWxnb2wtNjAu
ICBJIGxlYXJuZWQgYm90aCxccGFyDQpidXQgaGFkIGEgc3Ryb25nIHByZWZlcmVuY2UgZm9yIEFs
Z29sLCBiZWNhdXNlIEkgY291bGQgY29tcHJlaGVuZCBpdC5ccGFyDQpccGFyDQpBbm90aGVyIHN0
dWRlbnQgYW5kIEkgZW5kZWQgdXAgdmlzaXRpbmcgR0UgYW5kIHRhbGtpbmcgd2l0aCBzb21lIG9s
ZFxwYXINCm1lbi4gIE9uZSBvZiB0aGVtIGJlY2FtZSB2ZXJ5IGludGVyZXN0ZWQgd2hlbiBoZSBs
ZWFybmVkIHRoYXQgSSBsaWtlZFxwYXINCkFsZ29sIGFuZCBoZSBhc2tlZCB3aHkuICBJIHdhcyB0
b28gZW1iYXJyYXNzZWQgdG8gdGVsbCB0aGUgcmVhbFxwYXINCnJlYXNvbiwgSSBkaWQgbm90IHll
dCBoYXZlIG15IGlkZWFzIG9mIGNvbmNlcHR1YWwgYWNjZXNzaWJpbGl0eSwgbm9yXHBhcg0KdGhl
IGxpZmUga25vd2xlZGdlIHRoYXQgcGVvcGxlIHdobyBhcmUgcmVhbGx5IHNtYXJ0IGFyZSB0aGUg
b25lcyB3aG9ccGFyDQphcmUgdW5hZnJhaWQgdG8gc2F5ICJJIGRvbid0IHVuZGVyc3RhbmQuIiAg
SSBhbSBjb252aW5jZWQgdGhhdCBJXHBhcg0KbWlzc2VkIGEgZ3JlYXQgb3Bwb3J0dW5pdHkgdGhh
dCBkYXkuXHBhcg0KXHBhcg0KSSB0aGluayB0aGUgc2VlZHMgdG8gdW5kZXJzdGFuZCBhcmUgZXZp
ZGVudCBzb21ld2hlcmUgaW4gdGhhdFxwYXINCmFuZWNkb3RlLCBqdXN0IG91dCBvZiBteSByZWFj
aC5ccGFyDQpccGFyDQo+ICA+SGVyZSwgaWYgdGhlIHByb2dyYW1tZXIgdHJpZXMgdG8gYXNzaWdu
IGFuICJpbiIgdmFyaWFibGUsIHRoZXJlIGFyZVxwYXINCj4gID5kZXNpZ24gY2hvaWNlcy4gIE9u
ZSBjaG9pY2UgZm9yIHRoZSAobGFuZ3VhZ2UpIGRlc2lnbiBpcyB0aGF0IGl0IGlzIGFuXHBhcg0K
PiAgPmVycm9yLiAgVGhlIG90aGVyIGNob2ljZSBpcyB0aGF0IGl0IGlzIGp1c3QgYSAiZnJlZSIg
c2NyYXRjaCB2YXJpYWJsZS5ccGFyDQo+XHBhcg0KPiAgPklmIHlvdSBwYXNzIGEgcG9pbnRlciBh
cyBJTiwgY2FuIHlvdSBjaGFuZ2UgdGhlIGRlcmVmZXJlbmNlZCBkYXRhP1xwYXINCj5ccGFyDQo+
ICBPZiBjb3Vyc2UuIFN1Y2ggdXNlICJJTiIgaXMgcmVwcmVzZW50ZWQgcHJvYmFibGUuXHBhcg0K
PiAgSXQgZGVzY3JpYmVzIHRoZSBjb25zdGFudCBwb2ludGVyLCBidXQgdGhlIGRhdGEgd2hpY2gg
aXQgc3BlY2lmaWVzLFxwYXINCj4gIGNhbiBiZSBjaGFuZ2VkLiBJdCBjYW4gY29uZnVzZSBhIGxp
dHRsZSwgd2hldGhlciBub3Qgc28/XHBhcg0KPlxwYXINCj5ccGFyDQpccGFyDQo+XHBhcg0KPiAg
VGhpcyAic2VyaW91cyBpZGVhcyIgYXJlIG5vdCwgSXQncyBqdXN0IGEgZHJlYW0gdG8gaGF2ZVxw
YXINCj4gIGEgcG9zc2liaWxpdHkgdG8gd3JpdGUgcHJvZ3JhbXMgb25jZSwgYW5kIGJ1aWxkIHRv
IGJlXHBhcg0KPiAgcnVubmVkIGluIGFueSBlbnZpcm9ubWVudC4gQWxsIHNwZWNpZmljIGZlYXR1
cmVzIG11c3QgYmVccGFyDQo+ICBoaWRkZW4gaW4gYXBwcm9wcmlhdGUgbW9kdWxlcywgYW5kIGFs
bCB0aGlzIHdpbGwgYmVccGFyDQo+ICBwZW5ldHJhdGVkIHdpdGggdGhlIGdlbmVyYWwgdW5pZm9y
bSBpbnRlcmZhY2UuXHBhcg0KXHBhcg0KSSB3YXMgdmVyeSBhdHRyYWN0ZWQgdG8gT2Jlcm9uLiAg
SSB3YXMgaGF2aW5nIGRpc2N1c3Npb25zIHNvbWVvbmUgd2hvXHBhcg0Kd291bGQgYmVjb21lIG15
IGRpc3NlcnRhdGlvbiBhZHZpc2VyIGFuZCB3ZSB0YWxrZWQgaW4gdGhlIGZyYW1ld29ya1xwYXIN
CnRoYXQgd3JpdGluZyBhbGxvd3MgdGhlIHRyYW5zbWlzc2lvbiBvZiB0aG91Z2h0cyB0aHJvdWdo
IGJvdGggZGlzdGFuY2VccGFyDQphbmQgdGhyb3VnaCB0aW1lLiAgVGhpcyBpZGVhIGlzICJmb3Vu
ZGF0aW9uYWwuIiAgVGhhdCBpcywgaXQgaXMgYW5ccGFyDQppZGVhIHVuZGVybmVhdGggbXVjaCBv
ZiB0aGUgZGlzY3Vzc2lvbnMgd2UgaGF2ZSBoYWQuXHBhcg0KXHBhcg0KT2Jlcm9uIGNhbWUgdG8g
bXkgYXdhcmVuZXNzIGluIHRoYXQgZXBvY2gsIGFuZCBJIGhhZCB0aGUgc2Vuc2UgdGhhdCBNWVxw
YXINCkRBVEEgY291bGQgYmUgcG9ydGVkIGludG8gdGhlIGZ1dHVyZSBvbiBhIENEIFJPTSBhbmQg
SSB3b3VsZCBjb250aW51ZVxwYXINCnRvIGJlIGFibGUgdG8gdXNlIGl0LCBldmVuIHRob3VnaCB0
aGUgY29tcHV0ZXJzIGV2b2x2ZWQgYW5kIHRoZVxwYXINCmVudmlyb25tZW50IGFyb3VuZCBtZSBk
aXNhcHBlYXJlZC4gIFRoaXMgcHJvbWlzZSBoYXMgYmVlbiBsYXJnZWx5XHBhcg0KcmVhbGl6ZWQu
ICBJIGhhdmUgYmVlbiByZWFkaW5nIGEgQ0QgdGhhdCBJIG1hZGUgaW4gMTk5OCB0aGF0IGhhcyBz
b21lXHBhcg0Kc291cmNlIGFuZCBiaW5hcmllcyBmb3IgU1BBUkMgYW5kIFNHSSBtYWNoaW5lcyBv
biB0aGVtLiAgSSdtIHJlYWRpbmdccGFyDQppdCBvbiBhbiBJbnRlbCBtYWNoaW5lLiAgVGhpbmdz
IGhhdmUgZmluYWxseSBiZWNvbWUgcmF0aW9uYWwsIGluIHRoYXRccGFyDQpteSBkYXRhIGlzIHRo
ZSBmb2N1cywgYW5kIHRoZSBtYWNoaW5lIGlzICJvbmx5IiBhbiBhcHBsaWFuY2UuXHBhcg0KXHBh
cg0KXHBhcg0KPlxwYXINCj4gIEJ1dCBwZW9wbGUgbGlrZSB0byBjcmVhdGUgb3duIHByb2dyYW1t
aW5nIGxhbmd1YWdlc1xwYXINCj4gIHRvbyBzdHJvbmdseS4gTWF5IGFsc28gSSB3aWxsIGNyZWF0
ZSBvbmUgT2Jlcm9uIHN1YnNldD8gOy0pXHBhcg0KPlxwYXINCj5ccGFyDQpccGFyDQpZZXMuICBX
aGVuIGl0IHdhcyBtb3JlIG9idmlvdXMgdGhhdCBJJ20ganVzdCBhIHdhbm5hYmUsIEkgb2ZmZXJl
ZFxwYXINCmFkdmljZSB0byBjaGFuZ2UgdGhlIGxhbmd1YWdlIHRvIHRoZSBuZXdzZ3JvdXAuICBU
aGVzZSBzdWdnZXN0aW9uc1xwYXINCmNhbWUgZnJvbSBvdGhlcnMgYXMgd2VsbCBvbiBhIGZyZXF1
ZW50IGJhc2lzLiAgVGhleSB3ZXJlIChwcm9wZXJseSlccGFyDQp2ZXJ5IHN0cm9uZ2x5IHJlamVj
dGVkLiAgTm93LCBJIGhhdmUgcHJhY3RpY2VkIHNvbWUga2FyYXRlIGFuZCBoYXZlXHBhcg0KYmVl
biBleHBvc2VkIHRvIGEgZGlzY2lwbGluZSB0aGF0IGhhcyByZW1haW5lZCBjb25zaXN0ZW50IGFj
cm9zc1xwYXINCm1pbGxlbmlhIGFuZCB3aGljaCBoYXMgYSBjb3JyZXNwb25kaW5nIHN0cmljdG5l
c3MgYWJvdXQgdW5hdXRob3JpemVkXHBhcg0KY2hhbmdlLiAgSSB0aGluayB0aGlzIGRpc2N1c3Np
b24gaGFzIHRoZSByaWdodCBiYWxhbmNlIC0tLSBub3QgY2hhbmdlXHBhcg0KT2Jlcm9uIGl0c2Vs
ZiwgYW5kIG5vdCBjaGFuZ2UgYSBkb3plbiBpbnRlcmFjdGlvbiBkZXNpZ24gZWxlbWVudHMsIGJ1
dFxwYXINCmxvb2sgYSBvbmUgc2luZ2xlIGNoYW5nZSwgaW1wbGVtZW50IGl0LiAgVGhlIG5leHQg
c3RlcCB0aGF0IEkgc2VlIGluXHBhcg0KdGhlIHB1YmxpY2F0aW9ucyBmcm9tIEVUSCBpcyB0byBt
ZWFzdXJlIHNvbWUgc3lzdGVtIG1ldHJpYyB3aXRoIGJvdGhccGFyDQpvcHRpb25zLiAgSSB3YXMg
bG9va2luZyBhdCB0aGUgLk9iaiBmaWxlIHN0cnVjdHVyZSBpbiAiUHJvamVjdCBPYmVyb24iXHBh
cg0KYW5kIFdpcnRoIGxhaWQgb3V0IHR3byBwb3NzaWJpbGl0aWVzIHRvIGRlYWwgd2l0aCB0aGUg
cmVsb2NhdGlvblxwYXINCmluZm9ybWF0aW9uIG9uIGltcG9ydGVkIHByb2NlZHVyZXMuICBIZSBk
aWQgYW4gYXN0b25pc2hpbmcgdGhpbmc6ICBoZVxwYXINCndyb3RlIHR3byB2ZXJzaW9uIG9mIHRo
ZSBjb21waWxlciAvIGxpbmtlciBhbmQgcmVwb3J0ZWQgbWVhc3VyZW1lbnRzLlxwYXINClxwYXIN
ClxwYXINClxwYXINCj5ccGFyDQo+XHBhcg0KPiAgT2xlZyBOLiBDaGVyLFxwYXINCj4gIENvbG9z
c29mdCBSZXNlYXJjaC5ccGFyDQo+ICBhbGxvdEB1a3IubmV0XHBhcg0KPiAgMjAwOC0wMi0yMVxw
YXINCj5ccGFyDQpccGFyDQpccGFyDQotLSBccGFyDQotLSBccGFyDQpBdWJyZXkgTWNJbnRvc2gs
IFBoLkQuXHBhcg0KMTUwMiBEZXZvbiBDaXJjbGVccGFyDQpBdXN0aW4gVFggNzg3MjMtMTgxNFxw
YXINCmh0dHA6Ly9ob21lLmdyYW5kZWNvbS5uZXQvfmFtY2ludG9zaC9hdWJyZXkvU2VhcmNoL1xw
YXINClxwYXINClxwYXINCi0tLS1ccGFyDQpUbyB1bnN1YnNjcmliZSwgc2VuZCBhIG1lc3NhZ2Ug
d2l0aCBib2R5ICJTSUdOT0ZGIEJMQUNLQk9YIiB0byBMSVNUU0VSVkBMSVNUUy5PQkVST04uQ0h9
fQByAMAk
----boundary-LibPST-iamunique-1020673610_-_---
Received on Thu Feb 21 2008 - 16:31:48 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:31:00 UTC