<div dir="auto"><div class="gmail_quote" dir="auto"><div dir="ltr">R0b0t1 <<a href="mailto:r030t1@gmail.com">r030t1@gmail.com</a>> schrieb am Do., 26. Juli 2018, 09:53:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Jul 23, 2018 at 11:11 AM, Ryan Joseph<br>
<<a href="mailto:ryan@thealchemistguild.com" target="_blank" rel="noreferrer">ryan@thealchemistguild.com</a>> wrote:<br>
><br>
><br>
>> On Jul 22, 2018, at 4:54 AM, Sven Barth via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank" rel="noreferrer">fpc-pascal@lists.freepascal.org</a>> wrote:<br>
>><br>
>> And that's why there are people who *do* care about it. Of course you can put everything and the kitchen think into a language. But if it doesn't fit the language than you'll simply end up with a melting pot that doesn't feel coherent. Also while people might not consciously think about the spirit of the language I think they'll feel if the language is coherent with itself or not.<br>
><br>
> The spirit of the language is really hard to define in my opinion. I think we all agree that if we changed begin/end to {} we would all be offended but why again is “auto” not in the spirit of the language? It looks like Pascal to me. Calling Free at the end of blocks and inside destructors feels like Pascal to me.<br>
><br>
> Telling the compiler to call it for me by typing “auto” instead of “Free” doesn’t feel non-pascal. I don’t get it.<br>
><br>
> type<br>
> TMyClass = class<br>
> private<br>
> list: TFPGList; auto;<br>
> otherList: TFPGList; auto;<br>
> end;<br>
><br>
> var<br>
> c: TMyClass; auto;<br>
><br>
> begin<br>
> c := TMyClass.Create;<br>
><br>
<br>
This looks ugly. It also introduces modifiers to variable<br>
declarations. Some features should not be part of the language, they<br>
should be built on top of it.<br></blockquote></div><div dir="auto"><br></div><div dir="auto">While I don't support the "auto" idea, you are also wrong in saying that it "introduces" modifiers to variable declarations: there already are modifiers like "cvar", "public" and "external". </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div><div class="gmail_quote" dir="auto"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote></div></div>