On Sat, 26 Jan 2013, Paul Ishenin wrote:

26.01.13, 2:32, Michael Van Canneyt пишет:

Pascal is an explicitly declarative language. Anonymous functions go
100% against this. It is the readability horror I associate with
Javascript.

I wonder where you were when Operators feature has been added to pascal? Or generics?

Generics was implemented without my knowledge. I only found out when suddenly
the classes unit had been changed to use them. After a horrible discussion, this was reversed, because of the drop in speed you got when using generics.

Operators are a natural thing:
Pascal defines some basic types and operations on them.
Pascal allows you to define extra types, so it is natural that it allows you to define these operations on them.

I think now when operators for simple types are present in the language it is too late to care about explicitly declarative language. It is simple not explicit anymore.

And index (or better to call it key) extension for for-in loop will not make it less explicit for sure.

Personally, I think the tuple approach proposal is more general, and therefor 
better.

Once more, I do not think that language extensions are bad. I judge them on a case by case basis.

But if I must choose between

for a,b in c do

(with C a tuple enumerator/iterator) or

for a in c index b do

Then the former is ten times (well, a lot) better.

So if someone were to introduce that to solve the original poster's problem, you will not hear me protesting, it will have been well worth the energy I put in this discussion.

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

Reply via email to