Re: [BLACKBOX] Matrix slices - syntax

From: [at]} <Alexander>
Date: Fri, 2 Apr 2010 10:57:22 +0800

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

Hello!

DGD> I also wonder why VectorA does not match VectorB.
DGD> I can understand it is easier for a compiler to just check
DGD> the identifier rather than the semantics underlying it BUT
DGD> the internal representations are identical.

DGD> So if John calls it a pig and Tom calls it a swine then
DGD> "it" is not the same in the two cases?

  Consider independent compilation.

  Say, in module A you have:
  TYPE
     Vector* = ARRAY 3 OF REAL;
  PROCEDURE Proc* (VAR v: Vector);...

  And in module B you have:
  IMPORT A;
  PROCEDURE SomeProc;
  VAR v: ARRAY 3 OF REAL;
  BEGIN
     A.Proc (av);
  END SomeProc;

  The call A.Proc from B in illegal in Oberon, but what if it was
  legal, based on the assertion that the A.Vector and the anonymous
  type in B.Proc are "the same"? Let's say that we have the module B
  precompiled, and then we change the definition of A.Vector to be
  ARRAY 13 OF REAL. Technically, only the A.Vector type was udpated,
  which is not imported in B. B only uses A.Proc, and its interface
  was not modified, so there is no reason to recompile B.

  So, now we have the precompiled module B, which loads successfully
  passing the compatibility checks, but which supplies incorrect
  parameter to the A.Proc.

---=====---
 Alexander


----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy----boundary-LibPST-iamunique-1652144758_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhlbGxvIVxwYXINClxwYXINCkRHRD4gSSBhbHNv
IHdvbmRlciB3aHkgVmVjdG9yQSBkb2VzIG5vdCBtYXRjaCBWZWN0b3JCLlxwYXINCkRHRD4gSSBj
YW4gdW5kZXJzdGFuZCBpdCBpcyBlYXNpZXIgZm9yIGEgY29tcGlsZXIgdG8ganVzdCBjaGVja1xw
YXINCkRHRD4gdGhlIGlkZW50aWZpZXIgcmF0aGVyIHRoYW4gdGhlIHNlbWFudGljcyB1bmRlcmx5
aW5nIGl0IEJVVFxwYXINCkRHRD4gdGhlIGludGVybmFsIHJlcHJlc2VudGF0aW9ucyBhcmUgaWRl
bnRpY2FsLlxwYXINClxwYXINCkRHRD4gU28gaWYgSm9obiBjYWxscyBpdCBhIHBpZyBhbmQgVG9t
IGNhbGxzIGl0IGEgc3dpbmUgdGhlblxwYXINCkRHRD4gIml0IiBpcyBub3QgdGhlIHNhbWUgaW4g
dGhlIHR3byBjYXNlcz9ccGFyDQpccGFyDQogIENvbnNpZGVyIGluZGVwZW5kZW50IGNvbXBpbGF0
aW9uLlxwYXINClxwYXINCiAgU2F5LCBpbiBtb2R1bGUgQSB5b3UgaGF2ZTpccGFyDQogIFRZUEVc
cGFyDQogICAgIFZlY3RvciogPSBBUlJBWSAzIE9GIFJFQUw7XHBhcg0KICBQUk9DRURVUkUgUHJv
YyogKFZBUiB2OiBWZWN0b3IpOy4uLlxwYXINClxwYXINCiAgQW5kIGluIG1vZHVsZSBCIHlvdSBo
YXZlOlxwYXINCiAgSU1QT1JUIEE7XHBhcg0KICBQUk9DRURVUkUgU29tZVByb2M7XHBhcg0KICBW
QVIgdjogQVJSQVkgMyBPRiBSRUFMO1xwYXINCiAgQkVHSU5ccGFyDQogICAgIEEuUHJvYyAoYXYp
O1xwYXINCiAgRU5EIFNvbWVQcm9jO1xwYXINClxwYXINCiAgVGhlIGNhbGwgQS5Qcm9jIGZyb20g
QiBpbiBpbGxlZ2FsIGluIE9iZXJvbiwgYnV0IHdoYXQgaWYgaXQgd2FzXHBhcg0KICBsZWdhbCwg
YmFzZWQgb24gdGhlIGFzc2VydGlvbiB0aGF0IHRoZSBBLlZlY3RvciBhbmQgdGhlIGFub255bW91
c1xwYXINCiAgdHlwZSBpbiBCLlByb2MgYXJlICJ0aGUgc2FtZSI/IExldCdzIHNheSB0aGF0IHdl
IGhhdmUgdGhlIG1vZHVsZSBCXHBhcg0KICBwcmVjb21waWxlZCwgYW5kIHRoZW4gd2UgY2hhbmdl
IHRoZSBkZWZpbml0aW9uIG9mIEEuVmVjdG9yIHRvIGJlXHBhcg0KICBBUlJBWSAxMyBPRiBSRUFM
LiBUZWNobmljYWxseSwgb25seSB0aGUgQS5WZWN0b3IgdHlwZSB3YXMgdWRwYXRlZCxccGFyDQog
IHdoaWNoIGlzIG5vdCBpbXBvcnRlZCBpbiBCLiBCIG9ubHkgdXNlcyBBLlByb2MsIGFuZCBpdHMg
aW50ZXJmYWNlXHBhcg0KICB3YXMgbm90IG1vZGlmaWVkLCBzbyB0aGVyZSBpcyBubyByZWFzb24g
dG8gcmVjb21waWxlIEIuXHBhcg0KXHBhcg0KICBTbywgbm93IHdlIGhhdmUgdGhlIHByZWNvbXBp
bGVkIG1vZHVsZSBCLCB3aGljaCBsb2FkcyBzdWNjZXNzZnVsbHlccGFyDQogIHBhc3NpbmcgdGhl
IGNvbXBhdGliaWxpdHkgY2hlY2tzLCBidXQgd2hpY2ggc3VwcGxpZXMgaW5jb3JyZWN0XHBhcg0K
ICBwYXJhbWV0ZXIgdG8gdGhlIEEuUHJvYy5ccGFyDQpccGFyDQotLS09PT09PS0tLVxwYXINCiBB
bGV4YW5kZXJccGFyDQpccGFyDQpccGFyDQotLS0tXHBhcg0KVG8gdW5zdWJzY3JpYmUsIHNlbmQg
YSBtZXNzYWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JPWCIgdG8gTElTVFNFUlZATElTVFMu
T0JFUk9OLkNIXHBhcg0KfQ==
----boundary-LibPST-iamunique-1652144758_-_---
Received on Fri Apr 02 2010 - 04:57:22 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:30:34 UTC