I'd suggest that if you're using SetLength(), then you should be basing it on Length(). If that doesn't work as expected then it's the RTL developers' problem.
I personally would prefer as many useful commands as possible be added to any language as long as it made sense
to do so.
Definitely not: the underlying language should be as simple as possible, with everything else in libraries loaded (or ignored) as necessary. That is something that Wirth learned between Pascal and Modula-2, although the library concept might have been introduced slightly earlier by IBM.
Having said that, it would be desirable if the language's syntax could be extended, which by and large is not possible for Pascal and its siblings.
MarkMLl