The freepascal website is not helpful for people new to FPC or Lazarus.
I went there now, looking for info on dynamic arrays.
Couldn't find it.
There's a Search function on the Docs page, but that just takes you to the forum root page, with no search at all happening...
Here's the entry for dynamic arrays at
https://www.freepascal.org/docs-html/current/prog/progsu164.html#x208-2220008.2.10:
"A dynamic array is stored as a pointer to a block of memory on the heap. The memory on the heap is a contiguous sequence of variables of the components of the array, just as for a static array. The reference count and memory size are stored in memory just before the actual start of the array, at a negative offset relative to the address the pointer refers to. It should not be used."
Totally helpful.
That's what I found after searching for the word "dynamic" under each HTML document in the Docs section.
The site is good if you're already an FPC dev looking for info, but not if you're new to the language trying to figure out how to do things.
The amount of research needed to get to a productive state is very high compared to many other languages, which is fine for teaching and learning, but not when productivity matters, not for experienced developers looking to implement a product or project, usually on a deadline.
I absolutely 100% understand the frustrations of people coming into this language/toolset.
AFAIK the concrete problem was that you needed information about the working of Free Pascal dynamic arrays but you did not find the link 'Documentation' on https://www.freepascal.org/
correct?
Or was the problem that you did not find https://www.freepascal.org/
?
The question is how the situation can be improved. How did you try to get information? You write:
Where I found it:
1. Old Borland documentation (sorry, I am not going to dive into the compiler code to find out) - only have to hope that the FPC implementation is the same as it is not mentioned in the prog.pdf.
2. Don't know anymore - but on the Freepascal docs (internet) it is not mentioned that SetLength is ALWAYS returning a NEW dynamic array, even when you are thrinking the array it is copied.
3. Found it in the prog.pdf of FPC
Why did you not first check the documentation link on Free Pascal website? What must be done that it is more known to the FPC users?