[fpc-devel] for-in-index loop

Michael Van Canneyt michael at freepascal.org
Fri Jan 25 18:38:59 CET 2013



On Sat, 26 Jan 2013, Alexander Klenin wrote:

> On Fri, Jan 25, 2013 at 7:07 PM, Michael Van Canneyt
> <michael at freepascal.org> wrote:
>> WITH EACH ADDITIONAL "FEATURE" WE ARE BUTCHERING PASCAL MORE AND MORE.
> Hm... Do not you think this is a bit of an overstatement?

No, not really. 
I really feel that we are deviating a lot from what pascal stands for.

>> There are plenty to choose from. He said maybe he'd look after fcl-stl. The
>> silence since was deafening.
> "for-in-index" extension was actually planned by me as a prerequisite
> for fcl-stl work.
> I did some experiments with the current implementation, even discussed
> it at a conference related to teaching of algorithmic programming to children.
> As I have already explained, main competition in this area now comes
> from Python and other dynamic languages. 
> While discussing container access in Pascal vs Python,
> lack of "for-in-index" was brought up by attendees as one of Pascal's
> weaknesses.

You can always find things missing in any language.

I miss compilation, and other low-level things in Python.

It depends on what you value.

>> He said he needed a arbitrary precision math library: Well, get started !
> I have chosen a good library, communicated with the author, and he
> agreed (on this list)
> to allow its inclusion in FPC. Now somebody (not me, since I do not
> have commit rights)
> should perform the addition.

Great news !

>
>> Both should be perfectly within grasp of a student.
>> If he has students, let them work on that.
> Unfortunately there are specific requirements for this type of student work
> (it is approximately equivalent to bachelor's thesis).
> "A single large new feature" is much better suited to it then
> "polishing the library, with many small refactorings and improvements".
> Note that for Vasily, "for-in-index" if not actually this "large feature",
> it was chosen by me as a relatively minor and simple feature to introduce him
> to the code base and the community.
> I am sorry that the community turned out not quite welcoming.

You could have asked in advance and be spared the disappointment.

>
>> Pascal needs more useful libraries.
> It is important to note that default libraries ARE part of the language

You are wrong there.

I am talking about libraries that perform actual tasks. Not containers.
PDF generating, https protocol and whatnot. 
Those are definitely not part of the language.

> and from the user's POV language vs library distinction is an irrelevant detail.

We have different ideas of what libraries are. 
The STL is not what I have in mind when I speak about a library.

> What is important is a clear, concise and easy-to-remember syntax.

Exactly. But we seem to have different ideas about what that is.

The student will have to remember 4 different syntaxes.

For a:=b to c do
for a:=b downto c do
for a in b do
for a in b index c do

Concise ? I don't think so.

And let us not forget that the last one is a highly abstract one, 
because you need a lot of concepts before you can explain why it 
is needed and how to use it. 
The first one, by contrast, is so simple that any 12-year old can get it.

Michael.



More information about the fpc-devel mailing list