Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2010-05

standard unit description -- builtin funcs & procs

5 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

spir ☣

Hello,

It seems, maybe, that most people using freepascal actually come from a different environment (esp Delphi) with all needed knowledge about (a dialect of) the language itself, here in fact Pascal *and* object Pascal; and also about its major utilities (& common libraries). How do *real* newcomers manage to get this knowledge?

The FAQ states:
20. Standard units
To see the list of base units supplied with Free Pascal, and on which platform they are supported, consult the Free Pascal user's manual. There is also a short description of what each unit does in the same section of the manual.

But I'm too stupid to find the mentionned description. The user manual only holds a plain list of units (not pointers to descriptions elsewhere). The reference manual does not hold anything about standard units. The programmer manual is all about the compiler itself. Or am I blind? Where to find a how to use them?

Ditto about builtin functions & procedures. I found by chance an older ref manual (version 1.0.8 -- may 2003) at http://www2.toki.or.id/fpcdoc/ref/ref.html that holds a desc of funcs & procs. But I don't know how up-to-date it is. This part has disappeared from current ref.

Denis

PS: I still don't get my own messages to the list. Anyone knows why? ________________________________

vit esse estrany ☣

spir.wikidot.com

Michael Van Canneyt
to spir ☣
spir ☣ wrote 12 lines
Hello, It seems, maybe, that most people using freepascal actually come from a different environment (esp Delphi) with all needed knowledge about (a dialect of) the language itself, here in fact Pascal *and* object Pascal; and also about its major utilities (& common libraries). How do *real* newcomers manage to get this knowledge? The FAQ states: 20. Standard units To see the list of base units supplied with Free Pascal, and on which platform they are supported, consult the Free Pascal user's manual. There is also a short description of what each unit does in the same section of the manual.

It refers to this page:

http://www.freepascal.org/docs-html/user/userch9.html

But I'm too stupid to find the mentionned description. The user manual only holds a plain list of units (not pointers to descriptions elsewhere).

Of course not, this is not what the list is for. The list is mainly meant for programmers coming from TP/Delphi to show what they can expect.

The reference manual does not hold anything about standard units. The programmer manual is all about the compiler itself. Or am I blind? Where to find a how to use them?

The RTL guide contains the documentation of all the units mentioned in the above pages:

http://www.freepascal.org/docs-html/rtl/index.html

the FCL guide documents the class-based units:

http://www.freepascal.org/docs-html/fcl/index.html

All these pages are referenced from

http://www.freepascal.org/docs.var

So I am kind of surprised to hear that you didn't find them.

Show quoted text 6 lines
Ditto about builtin functions & procedures. I found by chance an older ref manual (version 1.0.8 -- may 2003) at http://www2.toki.or.id/fpcdoc/ref/ref.html that holds a desc of funcs & procs. But I don't know how up-to-date it is. This part has disappeared from current ref.

Not really. It has simply moved to the RTL guide, where it belongs. The reference guide only describes the pascal language.

All builtin functions are described in the system unit. The system unit is included implicitly in all programs.

Michael.

Tomas Hajny
to Michael Van Canneyt
Michael Van Canneyt wrote
On Thu, 6 May 2010, spir ☣ wrote:

Hi,

Show quoted text 17 lines
> It seems, maybe, that most people using freepascal actually come from a > different environment (esp Delphi) with all needed knowledge about (a > dialect of) the language itself, here in fact Pascal *and* object > Pascal; > and also about its major utilities (& common libraries). How do *real* > newcomers manage to get this knowledge? > > The FAQ states: 20. Standard units To see the list of base units > supplied > with Free Pascal, and on which platform they are supported, consult the > Free Pascal user's manual. There is also a short description of what > each > unit does in the same section of the manual. It refers to this page: http://www.freepascal.org/docs-html/user/userch9.html

.
.

BTW, you may also want to have a look at
http://wiki.freepascal.org/Unit_categorization - it's incomplete (some newer units are missing there), but it still may help you a bit (and you or anyone else are welcome to extend it with further findings). Obviously, it's just for the first orientation especially for newcomers not having TP and/or Delphi background; the details are provided within the reference guide.

Tomas

spir ☣
to Tomas Hajny
Show quoted text 13 lines
> http://www.freepascal.org/docs-html/user/userch9.html . . BTW, you may also want to have a look at http://wiki.freepascal.org/Unit_categorization - it's incomplete (some newer units are missing there), but it still may help you a bit (and you or anyone else are welcome to extend it with further findings). Obviously, it's just for the first orientation especially for newcomers not having TP and/or Delphi background; the details are provided within the reference guide. Tomas

Thank you very much, Thomas. This page seems to be what I missed.

Actually, the issue is for me there seems to be (from an outside/newcomer pov) no organisation principle for libs (?), units, funcs, types that come with fpc. For instance, there are collections in various units, and those are not predictable for me (why the f*** is TFPList in "classes"? It one and a half hour to find it using a systematic review, after someone mentionned it) (and why not even listed in the overview of "classes"? while TList is there http://www.freepascal.org/docs-html/rtl/classes/index.html) (and why is "classes" in "rtl", by the way?).

I'll update/expand the page as I get to know better what it points to. A short introduction to the content, structure and use of fpc units' ref pages would also be helpful, what do you think?

denis
________________________________

vit esse estrany ☣

spir.wikidot.com

Tomas Hajny
to spir ☣
spir ☣ wrote 20 lines
On Fri, 7 May 2010 11:09:42 +0200 (CEST) "Tomas Hajny" wrote: > > http://www.freepascal.org/docs-html/user/userch9.html > . > . > > BTW, you may also want to have a look at > http://wiki.freepascal.org/Unit_categorization - it's incomplete (some > newer units are missing there), but it still may help you a bit (and you > or anyone else are welcome to extend it with further findings). > Obviously, > it's just for the first orientation especially for newcomers not having > TP > and/or Delphi background; the details are provided within the reference > guide. > > Tomas Thank you very much, Thomas. This page seems to be what I missed.

I'm glad that you find it useful. :-)

Show quoted text 9 lines
Actually, the issue is for me there seems to be (from an outside/newcomer pov) no organisation principle for libs (?), units, funcs, types that come with fpc. For instance, there are collections in various units, and those are not predictable for me (why the f*** is TFPList in "classes"? It one and a half hour to find it using a systematic review, after someone mentionned it) (and why not even listed in the overview of "classes"? while TList is there http://www.freepascal.org/docs-html/rtl/classes/index.html) (and why is "classes" in "rtl", by the way?).

I understand your point. A lot of that is directly or indirectly related to the background of FPC written from the beginning specifically for compatibility with TP/BP at first and later extended to compatibility with Delphi. Over time (or even from the very beginning), Delphi has thrown away a lot (most ;-) ) of compatibility with TP/BP (although it was a direct successor of TP/BP and came from the same company), whereas FPC kept compatibility to both. This results in duplicities / overlaps - that's why you find collections in both objects (TP/BP compatibility) and classes (Delphi compatibility, different OOP model).

Also, this is why TFPList is in classes - if TList is in classes due to compatibility with Delphi, it's logical to have TFPList there too.

Unit classes is part of RTL for mostly the same reason - it's in RTL in Delphi too and it contains some rather basic elements used in many different contexts by probably most programmers using the Delphi OOP model. See description at the bottom of
http://www.freepascal.org/docs-html/rtl/.

I'll update/expand the page as I get to know better what it points to. A short introduction to the content, structure and use of fpc units' ref pages would also be helpful, what do you think?

"FPC units' ref pages" are just one of the formats in which FPC documentation is provided (in addition to e.g. PDFs and CHMs) and which are all generated from sources maintained in our SVN repository. If you mean that the introductory part of this documentation (as available e.g. on http://www.freepascal.org/docs-html/rtl/) should be extended with some more information in order for a newcomer to understand the structure of the documentation, I'd suggest creating a feature request ticket in our bugs tracker with the appropriate category (docs) and adding a suggestion or even directly proposed changes to the text. The Wiki page I created some time ago is meant just as an additional resource with all advantages and disadvantages related to the fact that it is maintained separately (one of the advantages is the fact that everyone can extend it with additional information he considers important and missing there).

Tomas