Beginners question: Abstract record extension

From: Wijck, Bart van <"Wijck,>
Date: Mon, 23 Sep 2002 15:25:30 +0200

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

Hi BlackBoxers,

I'm trying to create an generic linked list along the lines of the generic
tree in Mossenbock's Object Oriented Programming i n Oberon-2 (page 77). The
abstract base class with its methods (with NEW, ABSTRACT added) compiles
fine.

TYPE
  Node* = POINTER TO NodeDesc;
  NodeDesc* = ABSTRACT RECORD
                      next* : Node;
                  END;

  List* = RECORD
                head* : Node;
            END;

PROCEDURE (x : Node) EqualTo* (y : Node) : BOOLEAN, NEW, ABSTRACT;

etc


However as soon as I try to extend the abstract base class as follows
(following the Oberon-2 example)


  StringNode = POINTER TO StringNodeDesc;
  StringNodeDesc = RECORD (NodeDesc)
                            key : ARRAY 11 OF CHAR;
                     END;

It refuses to compile with the error message 'unimplemented abstract
procedures in base types', marking NodeDesc. What is happening here?

> ____________________________________
> Bart van Wijck
> Senior Business Development Consultant
> Compuware BV
> Telefoon: 020 311 88 57
> Fax : 020 311 88 01
> Mobiel : 06 54 35 23 76
>
>

>
>
-- 
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify us immediately
and then destroy it. 
--------------------------------------------
To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xyTo 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.xyCurrent 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-2102515414_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhpIEJsYWNrQm94ZXJzLFxwYXINClxwYXINCkkn
bSB0cnlpbmcgdG8gY3JlYXRlIGFuIGdlbmVyaWMgbGlua2VkIGxpc3QgYWxvbmcgdGhlIGxpbmVz
IG9mIHRoZSBnZW5lcmljXHBhcg0KdHJlZSBpbiBNb3NzZW5ib2NrJ3MgT2JqZWN0IE9yaWVudGVk
IFByb2dyYW1taW5nIGkgbiBPYmVyb24tMiAocGFnZSA3NykuIFRoZVxwYXINCmFic3RyYWN0IGJh
c2UgY2xhc3Mgd2l0aCBpdHMgbWV0aG9kcyAod2l0aCBORVcsIEFCU1RSQUNUIGFkZGVkKSBjb21w
aWxlc1xwYXINCmZpbmUuIFxwYXINClxwYXINClRZUEVccGFyDQogIE5vZGUqID0gUE9JTlRFUiBU
TyBOb2RlRGVzYztccGFyDQogIE5vZGVEZXNjKiA9IEFCU1RSQUNUIFJFQ09SRFxwYXINCiAgXHRh
YiBcdGFiICAgICBuZXh0KiA6IE5vZGU7XHBhcg0KXHRhYiBcdGFiICAgRU5EO1x0YWIgXHBhcg0K
XHBhcg0KICBMaXN0KiA9IFJFQ09SRFxwYXINCiAgXHRhYiAgICAgICBoZWFkKiA6IE5vZGU7XHBh
cg0KXHRhYiAgICAgRU5EO1xwYXINClxwYXINClBST0NFRFVSRSAoeCA6IE5vZGUpIEVxdWFsVG8q
ICh5IDogTm9kZSkgOiBCT09MRUFOLCBORVcsIEFCU1RSQUNUO1xwYXINClxwYXINCmV0Y1xwYXIN
ClxwYXINClxwYXINCkhvd2V2ZXIgYXMgc29vbiBhcyBJIHRyeSB0byBleHRlbmQgdGhlIGFic3Ry
YWN0IGJhc2UgY2xhc3MgYXMgZm9sbG93c1xwYXINCihmb2xsb3dpbmcgdGhlIE9iZXJvbi0yIGV4
YW1wbGUpXHBhcg0KXHBhcg0KXHBhcg0KICBTdHJpbmdOb2RlID0gUE9JTlRFUiBUTyBTdHJpbmdO
b2RlRGVzYztccGFyDQogIFN0cmluZ05vZGVEZXNjID0gUkVDT1JEIChOb2RlRGVzYylccGFyDQog
ICAgICAgICAgIFx0YWIgICAgICAgICAga2V5IDogQVJSQVkgMTEgT0YgQ0hBUjtccGFyDQpcdGFi
ICAgICAgICAgICAgICBFTkQ7XHRhYiBccGFyDQpccGFyDQpJdCByZWZ1c2VzIHRvIGNvbXBpbGUg
d2l0aCB0aGUgZXJyb3IgbWVzc2FnZSAndW5pbXBsZW1lbnRlZCBhYnN0cmFjdFxwYXINCnByb2Nl
ZHVyZXMgaW4gYmFzZSB0eXBlcycsIG1hcmtpbmcgTm9kZURlc2MuIFdoYXQgaXMgaGFwcGVuaW5n
IGhlcmU/IFx0YWIgXHBhcg0KXHBhcg0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19ccGFyDQo+IEJhcnQgdmFuIFdpamNrXHBhcg0KPiBTZW5pb3IgQnVzaW5lc3MgRGV2ZWxv
cG1lbnQgQ29uc3VsdGFudFxwYXINCj4gQ29tcHV3YXJlIEJWXHBhcg0KPiBUZWxlZm9vbjogMDIw
IDMxMSA4OCA1N1xwYXINCj4gRmF4ICAgICAgIDogMDIwIDMxMSA4OCAwMVxwYXINCj4gTW9iaWVs
ICAgOiAwNiA1NCAzNSAyMyA3NlxwYXINCj4gXHBhcg0KPiBccGFyDQo+IFxwYXINCj4gXHBhcg0K
LS0gXHBhcg0KVGhlIGNvbnRlbnRzIG9mIHRoaXMgZS1tYWlsIGFyZSBpbnRlbmRlZCBmb3IgdGhl
IG5hbWVkIGFkZHJlc3NlZSBvbmx5LiBJdFxwYXINCmNvbnRhaW5zIGluZm9ybWF0aW9uIHRoYXQg
bWF5IGJlIGNvbmZpZGVudGlhbC4gVW5sZXNzIHlvdSBhcmUgdGhlIG5hbWVkXHBhcg0KYWRkcmVz
c2VlIG9yIGFuIGF1dGhvcml6ZWQgZGVzaWduZWUsIHlvdSBtYXkgbm90IGNvcHkgb3IgdXNlIGl0
LCBvciBkaXNjbG9zZVxwYXINCml0IHRvIGFueW9uZSBlbHNlLiBJZiB5b3UgcmVjZWl2ZWQgaXQg
aW4gZXJyb3IgcGxlYXNlIG5vdGlmeSB1cyBpbW1lZGlhdGVseVxwYXINCmFuZCB0aGVuIGRlc3Ry
b3kgaXQuIFxwYXINClxwYXINCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tXHBhcg0KXHBhcg0KVG8gdW5zdWJzY3JpYmUgZnJvbSB0aGlzIG1haWxpbmcgbGlzdCwg
c2VuZCBhIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgd29yZCAidW5zdWJzY3JpYmUiIHRvOlxwYXIN
CiAgIGJsYWNrYm94LXJlcXVlc3RAb2Jlcm9uLmNoXHBhcg0KXHBhcg0KVG8gZ2V0IGEgbGlzdCBv
ZiB2YWxpZCBlLW1haWwgY29tbWFuZHMgYW5kIGluc3RydWN0aW9ucyBvbiB0aGVpciB1c2FnZSwg
c2VuZCBhIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgd29yZCAiaGVscCIgdG8gdGhlIGFib3ZlIGFk
ZHJlc3MuXHBhcg0KXHBhcg0KU2VuZCBhbnkgcHJvYmxlbSByZXBvcnRzIG9yIHF1ZXN0aW9ucyBy
ZWxhdGVkIHRvIHRoaXMgZW1haWwgbGlzdCB0byB0aGUgbGlzdCBvd25lciBhdFxwYXINCiAgIG93
bmVyLWJsYWNrYm94QG9iZXJvbi5jaFxwYXINClxwYXINCkN1cnJlbnQgcG9zdGluZyBwb2xpY3k6
XHBhcg0KXHBhcg0KYSkgVG8gcG9zdCB5b3Ugc2hvdWxkIHVzZSB0aGUgc2FtZSBhZGRyZXNzIGJ5
IHdoaWNoIHlvdSBhcmUgc3Vic2NyaWJlZCB0byB0aGUgbWFpbGluZyBsaXN0LiBUaGF0IHdheSwg
dGhlIGxpc3Qgc2VydmVyIHdpbGwgcmVjb2duaXplIHlvdSBhcyBzdWJzY3JpYmVyIGFuZCBmb3J3
YXJkIHlvdXIgcG9zdGluZyBpbW1lZGlhdGVseSwgd2l0aG91dCBjcmVhdGluZyBhbnkgb3Zlcmhl
YWQuXHBhcg0KXHBhcg0KYikgSWYsIGZvciBzb21lIHJlYXNvbiwgeW91IGNhbm5vdCBwb3N0IGZy
b20gdGhlIGFkZHJlc3MsIGJ5IHdoaWNoIHlvdSBhcmUgc3Vic2NyaWJlZCwgeW91ciBtZXNzYWdl
IHdpbGwgYmUgbW9kZXJhdGVkIHRvIGF2b2lkIHNwYW0uIFBsZWFzZSB1bmRlcnN0YW5kIHRoYXQg
bW9kZXJhdGlvbiB3aWxsIG9mdGVuIGNhdXNlIHNvbWUgZGVsYXksIGluIHBhcnRpY3VsYXIgb3Zl
ciB3ZWVrZW5kcyBvciBob2x5ZGF5cy5ccGFyDQp9
----boundary-LibPST-iamunique-2102515414_-_---
Received on Mon Sep 23 2002 - 15:25:30 UTC

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