Micha Nelissen wrote:
Bram Kuijvenhoven wrote:
Florian Klaempfl wrote:
- we'll use a syntax as close as possible to Chrome, e.g.
type
TList<T> = class
...
end;
I greatly favor this syntaxis above the generic-modifier. It will look
at a lot more familiar to most programmers (due to e.g. C++ and Java),
"Must look familiar" programmers should be fired.
Of course, the implementation of generics in Pascal should not depend solely on
how it is implemented in other languages. I should in the first place fit into
Pascal.
Does <> for generics fit into Pascal? Well, we use [] for array indexing, and () for
parameter passing to procedures/functions/methods. So why not use <> for passing parameters
to generic types? And, similar to the case of function calls and array indexing, these <>
could follow the type identifier directly.
The only objection might be the ambiguity with the < operator. From that perspective,
a solution like generic(T) might seem nice. But a solution for that was already
proposed: only allow the use of <> in declaration blocks, not in code. Also, I
wouldn't particularly consider genericness a modifier (but like parameters).
Of course it is hard to discuss about matters of taste. Perhaps a poll might
help us out here.
Anyway, I think that seeking some syntactical familiarity (when other
considerations more or less tie) isn't neccesarily bad.
Consider for example the following: Is Java bad because it looks like C++? Or
is PHP bad because is looks like C++? I think it is even advantageous for
programmers these languages have a similar syntaxis.
Just as + means addition in most programming languages, <> is used for generics
as far as I know in most languages supporting generics.
I think if other considerations tie, we should therefore choose for <> as well.
I think this will at least add to popularity and also reduce RSI ;)
Regards,
Bram
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel