(unknown charset) Re: [BLACKBOX] Read-only IN parameters for all data types

From: (unknown charset) Oleg N. Cher <"Oleg>
Date: Wed, 20 Feb 2008 12:02:05 +0200

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

Dear Chris,

As likely you know, there is in Delphi:

PROCEDURE Do (CONST a: INTEGER);

It is similar to parameter IN proposed by you.
As the majority of parameters in a procedure
are read-only, we should will emphasize it by using of IN.
And we shall litter unduly texts of programs by
the using of IN.
But, as shows experience, Delphi programmers more often
do not like use the CONST in such a way.
They prefer to use the most simple way of recording of transmitted parameters:

PROCEDURE Do (a: INTEGER);

Therefore I shall agree to write read-only parameters so more likely:

PROCEDURE Do (a: INTEGER);

And parameters which can be changed in a body of procedure,
for example, so:

PROCEDURE Do (VALUE a: INTEGER);

Or to not accent on this way of recording of parameters.

PROCEDURE Do (a: INTEGER); (* The majority of procedures use read-only parameters *)

Prof. Wirth is a good psychologist of programming.
He knows that too big number of excessive possiblities
generates bulky languages. See, "problem" of Oberon that it is too small,
And everyone has the sights at its own posiblities, ;-)
And everyone want to develop the own Oberon subset and own compiler :)
As a result, we have many "student's" realizations of the compilers,
and very little serious compilers for practical problems.
And serious people o not know what compiler to use, because they think,
that all compilers of the Oberon are bad.
I would prefer, that be less number of compilers, but better.
And one standard, not best of bests standard, but checked up
by time and which is accepted with many people.

I too would prefer to see the standard some another. :-)
For example, I like unsigned arithmetics and binary operations
(and, or, xor) in language. But I know, that high portability
of the Oberon is due to the standard which let not the best,
but we accept for the big circe of problems.

Instead of it I suggest to expand a way of use IN so:

  IF a IN {0..1000} THEN ... END;

Current BlackBox realization does not accept such using of sets.
But such way of recording is good and evident. What will say?


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


----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy----boundary-LibPST-iamunique-605637638_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTFcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIERlYXIgQ2hyaXMsXHBhcg0KXHBhcg0KQXMgbGlr
ZWx5IHlvdSBrbm93LCB0aGVyZSBpcyBpbiBEZWxwaGk6XHBhcg0KXHBhcg0KUFJPQ0VEVVJFIERv
IChDT05TVCBhOiBJTlRFR0VSKTtccGFyDQpccGFyDQpJdCBpcyBzaW1pbGFyIHRvIHBhcmFtZXRl
ciBJTiBwcm9wb3NlZCBieSB5b3UuXHBhcg0KQXMgdGhlIG1ham9yaXR5IG9mIHBhcmFtZXRlcnMg
aW4gYSBwcm9jZWR1cmVccGFyDQphcmUgcmVhZC1vbmx5LCB3ZSBzaG91bGQgd2lsbCBlbXBoYXNp
emUgaXQgYnkgdXNpbmcgb2YgSU4uXHBhcg0KQW5kIHdlIHNoYWxsIGxpdHRlciB1bmR1bHkgdGV4
dHMgb2YgcHJvZ3JhbXMgYnlccGFyDQp0aGUgdXNpbmcgb2YgSU4uXHBhcg0KQnV0LCBhcyBzaG93
cyBleHBlcmllbmNlLCBEZWxwaGkgcHJvZ3JhbW1lcnMgbW9yZSBvZnRlblxwYXINCmRvIG5vdCBs
aWtlIHVzZSB0aGUgQ09OU1QgaW4gc3VjaCBhIHdheS5ccGFyDQpUaGV5IHByZWZlciB0byB1c2Ug
dGhlIG1vc3Qgc2ltcGxlIHdheSBvZiByZWNvcmRpbmcgb2YgdHJhbnNtaXR0ZWQgcGFyYW1ldGVy
czpccGFyDQpccGFyDQpQUk9DRURVUkUgRG8gKGE6IElOVEVHRVIpO1xwYXINClxwYXINClRoZXJl
Zm9yZSBJIHNoYWxsIGFncmVlIHRvIHdyaXRlIHJlYWQtb25seSBwYXJhbWV0ZXJzIHNvIG1vcmUg
bGlrZWx5OlxwYXINClxwYXINClBST0NFRFVSRSBEbyAoYTogSU5URUdFUik7XHBhcg0KXHBhcg0K
QW5kIHBhcmFtZXRlcnMgd2hpY2ggY2FuIGJlIGNoYW5nZWQgaW4gYSBib2R5IG9mIHByb2NlZHVy
ZSxccGFyDQpmb3IgZXhhbXBsZSwgc286XHBhcg0KXHBhcg0KUFJPQ0VEVVJFIERvIChWQUxVRSBh
OiBJTlRFR0VSKTtccGFyDQpccGFyDQpPciB0byBub3QgYWNjZW50IG9uIHRoaXMgd2F5IG9mIHJl
Y29yZGluZyBvZiBwYXJhbWV0ZXJzLlxwYXINClxwYXINClBST0NFRFVSRSBEbyAoYTogSU5URUdF
Uik7ICgqIFRoZSBtYWpvcml0eSBvZiBwcm9jZWR1cmVzIHVzZSByZWFkLW9ubHkgcGFyYW1ldGVy
cyAqKVxwYXINClxwYXINClByb2YuIFdpcnRoIGlzIGEgZ29vZCBwc3ljaG9sb2dpc3Qgb2YgcHJv
Z3JhbW1pbmcuXHBhcg0KSGUga25vd3MgdGhhdCB0b28gYmlnIG51bWJlciBvZiBleGNlc3NpdmUg
cG9zc2libGl0aWVzXHBhcg0KZ2VuZXJhdGVzIGJ1bGt5IGxhbmd1YWdlcy4gU2VlLCAicHJvYmxl
bSIgb2YgT2Jlcm9uIHRoYXQgaXQgaXMgdG9vIHNtYWxsLFxwYXINCkFuZCBldmVyeW9uZSBoYXMg
dGhlIHNpZ2h0cyBhdCBpdHMgb3duIHBvc2libGl0aWVzLCA7LSlccGFyDQpBbmQgZXZlcnlvbmUg
d2FudCB0byBkZXZlbG9wIHRoZSBvd24gT2Jlcm9uIHN1YnNldCBhbmQgb3duIGNvbXBpbGVyIDop
XHBhcg0KQXMgYSByZXN1bHQsIHdlIGhhdmUgbWFueSAic3R1ZGVudCdzIiByZWFsaXphdGlvbnMg
b2YgdGhlIGNvbXBpbGVycyxccGFyDQphbmQgdmVyeSBsaXR0bGUgc2VyaW91cyBjb21waWxlcnMg
Zm9yIHByYWN0aWNhbCBwcm9ibGVtcy5ccGFyDQpBbmQgc2VyaW91cyBwZW9wbGUgbyBub3Qga25v
dyB3aGF0IGNvbXBpbGVyIHRvIHVzZSwgYmVjYXVzZSB0aGV5IHRoaW5rLFxwYXINCnRoYXQgYWxs
IGNvbXBpbGVycyBvZiB0aGUgT2Jlcm9uIGFyZSBiYWQuXHBhcg0KSSB3b3VsZCBwcmVmZXIsIHRo
YXQgYmUgbGVzcyBudW1iZXIgb2YgY29tcGlsZXJzLCBidXQgYmV0dGVyLlxwYXINCkFuZCBvbmUg
c3RhbmRhcmQsIG5vdCBiZXN0IG9mIGJlc3RzIHN0YW5kYXJkLCBidXQgY2hlY2tlZCB1cFxwYXIN
CmJ5IHRpbWUgYW5kIHdoaWNoIGlzIGFjY2VwdGVkIHdpdGggbWFueSBwZW9wbGUuXHBhcg0KXHBh
cg0KSSB0b28gd291bGQgcHJlZmVyIHRvIHNlZSB0aGUgc3RhbmRhcmQgc29tZSBhbm90aGVyLiA6
LSlccGFyDQpGb3IgZXhhbXBsZSwgSSBsaWtlIHVuc2lnbmVkIGFyaXRobWV0aWNzIGFuZCBiaW5h
cnkgb3BlcmF0aW9uc1xwYXINCihhbmQsIG9yLCB4b3IpIGluIGxhbmd1YWdlLiBCdXQgSSBrbm93
LCB0aGF0IGhpZ2ggcG9ydGFiaWxpdHlccGFyDQpvZiB0aGUgT2Jlcm9uIGlzIGR1ZSB0byB0aGUg
c3RhbmRhcmQgd2hpY2ggbGV0IG5vdCB0aGUgYmVzdCxccGFyDQpidXQgd2UgYWNjZXB0IGZvciB0
aGUgYmlnIGNpcmNlIG9mIHByb2JsZW1zLlxwYXINClxwYXINCkluc3RlYWQgb2YgaXQgSSBzdWdn
ZXN0IHRvIGV4cGFuZCBhIHdheSBvZiB1c2UgSU4gc286XHBhcg0KXHBhcg0KICBJRiBhIElOIFx7
MC4uMTAwMFx9IFRIRU4gLi4uIEVORDtccGFyDQpccGFyDQpDdXJyZW50IEJsYWNrQm94IHJlYWxp
emF0aW9uIGRvZXMgbm90IGFjY2VwdCBzdWNoIHVzaW5nIG9mIHNldHMuXHBhcg0KQnV0IHN1Y2gg
d2F5IG9mIHJlY29yZGluZyBpcyBnb29kIGFuZCBldmlkZW50LiBXaGF0IHdpbGwgc2F5P1xwYXIN
ClxwYXINClxwYXINCk9sZWcgTi4gQ2hlcixccGFyDQpDb2xvc3NvZnQgUmVzZWFyY2guXHBhcg0K
YWxsb3RAdWtyLm5ldFxwYXINCjIwMDgtMDItMjBccGFyDQpccGFyDQpccGFyDQotLS0tXHBhcg0K
VG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtZXNzYWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JP
WCIgdG8gTElTVFNFUlZATElTVFMuT0JFUk9OLkNIfX0ATElTVA==
----boundary-LibPST-iamunique-605637638_-_---
Received on Wed Feb 20 2008 - 11:02:05 UTC

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