<div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Hairy Pixels via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org">fpc-pascal@lists.freepascal.org</a>> schrieb am Sa., 19. Okt. 2024, 14:20:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Oct 19, 2024 at 3:35:25 PM, Michael Van Canneyt via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank" rel="noreferrer">fpc-pascal@lists.freepascal.org</a>> wrote:<br></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" type="cite">
You are not taking the reasoning to its logical conclusion.<br><br>These "new users" will want to have some standard library - the RTL and<br>packages.<br><br>So the whole rtl/packages needs to be recreated if you introduce this,<br>for the reasons that were mentioned by Sven.<br>Reasons that were already voiced 20 years ago, by the way.<br><br>
</blockquote>
</div>
<br>
<div dir="ltr">Yes all the RTL would need to be redesigned and all the manual frees removed. I don’t think it’s THAT difficult honestly to make that work, just loads of precious of time.</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">It's an unnecessary maintenance burden, because the current RTL (and packages) needs to be kept as well for backwards compatibility. Anything that compromises that will not be accepted, because this is one of *the* strengths of FPC. As Michael said, we will not maintain two RTLs. </div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="ltr"></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="ltr">This is probably why C++ did smart pointers. Doing those right with Pascal is even harder than C++ due the predeclared variables. I’ve played with the management operators and they still have problems, most of all is the default property which has been discussed for over 5 years with no progress.<br></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Smart pointers or more precisely "external reference counting" is the way to go. And for it to simply work "default properties" or something similar is not even needed only if we want to reduce typing. And predeclared variables compared to C++ is also not a problem. </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div></div>