On Wed, 21 Oct 2009, Micha Nelissen wrote:

Michael Van Canneyt wrote:
Ideally, the compiler has no knowledge at all of specific classes, and a new keyword such as Iterator (or whatever) helps in ensuring that the compiler
is not contaminated with knowledge of specific classes or methods.

I'm not sure how things are helped by "slapping" a keyword onto it? If we call the thing a "class" then it's evil, but if it's called an "iterator" which is actually the exact same thing as a class, it's fine? Correct me if wrong.

Because with something like

Type
  MyIterator = Iterator(TSomeResultType,Func1,Func2,Func3);

Function MyIterator.Func1 : TSomeResultType;

begin
end;

Etc.

You're free to choose the names of the functions, so nothing has to be
hardcoded in the compiler. It's a bit like operators, where you can also
choose the names of the operands.

Michael.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to