[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Proposal: Abstract types for OOC
Stewart Greenhill (greenhil@murdoch.edu.au) schrieb:
> a* = RECORD [ABSTRACT]
> x-, y- : REAL;
> END;
>
> PROCEDURE [ABSTRACT] (VAR v : a) F * (x, y : REAL);
> BEGIN
> END F;
After cross-reading you proposal, I still don't know whether the ABSTRACT
keyword for Records is required or not.
If it is: what should it be good for? For documentation purposes? Then it's
not consistent with the language, since eg. methods are not "documented" when
there class record is defined.
If it's not required: Why use it at all?
Should it be possible -- acording to your proposal -- to define an abstract
record without any abstract methods? (This would be the only case I can
imagine where _declaring_ a _record_ as being abstract. This is: using
RECORD ... ABSTRACT.) What is the "abstract" part of this? What determines
whether an extension of this type is abstract or concrete?
>Q1: Logically, an abstract method may redefine another abstract method. In
>practice, when would this be used?
Never uses, should issue en error.
>- Stewart
+++hartmut