<!--[if (gte mso 9)|(IE)]><style type="text/css">.main-style-8bf5fc97988d43a9251e { font-family: sans-serif; font-size: 11pt; /* inherit */ }</style><![endif]--><div style="/* inherit */" class="main-style-8bf5fc97988d43a9251e"><div>Regarding Memory Management</div><div><br /></div><div>Its possible to write a Pascal program w/o any pointer, but it may be not elegant and  interfaces to some C-like GUI structures, as used in all common OSs, are impossible. <br /></div><div><br /></div><div>But, I am using Borland Pascal (sic!) and also FreePascal (no Lazarus) for small embedded system for over 25 years now w/o any pointer. <br /></div><div>Code is sometimes ugly, but it is (proofed by reality with many different projects)  hard rock stable for 24/7/365 applications. <br /></div><div>Maybe I am wrong, but afaik, procedural programming w/o objects and pointers requires no add. memory management. <br /></div><div>The size and memory location of all variables is fixed. And, yes, of course, you have to care about an array access, but $R+ is your friend. <br /></div><div><br /></div><div>See: N. Wirth Algorithms and Data Structures chapter 4.2: <br /></div><div><i>"A further consequence of the explicitness of pointers is that it is possible to define and manipulate cyclic</i></div><div><i>data structures. <b>This additional flexibility</b> yields, of course, not only increased power but also requires</i></div><div><i><b>increased care </b></i><i>("erhöhte Sorgfalt" in the German ed.)</i><i><b> by the programmer</b>, because the manipulation of cyclic data structures may easily lead to</i></div><div><i>nonterminating processes.</i></div><div><i><b>This phenomenon of power and flexibility being intimately coupled with the danger of misuse</b> is well</i></div><div><i>known in programming, and it particularly recalls the GOTO statement."</i></div><div><i><br /></i></div><div>So as in real life: the price for freedom is increased care!<br /></div><div>I am awaiting your shitstorms......<i><br /></i></div><div><i><br /></i></div><div>Markus<i><br /></i></div></div><img src="https://app.frontapp.com/api/1/noauth/companies/schleibinger_geraete_gmbh/seen/msg_mo4uhxe/han_9pzu6a/e32dc0ac.gif" alt="Sent from Front" aria-hidden="true" style="width: 1px; height: 1px"><br><blockquote type="cite" class="front-blockquote" style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">On October 19, 2024 at 4:27 PM GMT+2 <a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank" rel="noopener noreferrer">fpc-pascal@lists.freepascal.org</a> wrote:<br /><br /><div id="fae_mo4uhxeqnrl75"><div><div class="fa8paaom front-email-body"><div class="gmail_quote">
    <div class="fa-n3r1gs" dir="ltr">On Oct 19, 2024 at 9:15:10 PM, Rainer Stratmann via fpc-pascal <<a rel="noopener noreferrer" href="mailto:fpc-pascal@lists.freepascal.org" target="_blank">fpc-pascal@lists.freepascal.org</a>> wrote:<br /></div>
    <blockquote type="cite" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote front-blockquote">
        I really can not see where beginners have to struggle with memory management.<br />If a project gets bigger you have to think about it, yes. It depends on the<br />coding style. In my project I wrote my own memory management for the<br />webserver. It took me 3 weeks of work.<br />
    </blockquote>
</div>
<br />
<div dir="ltr">I didn’t mean to get into a big flame war over this and debate the merits of both I’m just telling you what I see in the industry and trends in programming. This isn’t the only thing either just one of the larger ones.</div><div dir="ltr"><br /></div><div dir="ltr">If you really want to know then FPC should conduct a survey and see what users say. Ask existing users and try to reach out to other programmers too.</div><div dir="ltr"><br /></div><div dir="ltr"><div><div data-smartmail="gmail_signature" class="fawp1x91"><div dir="ltr">Regards,</div>    Ryan Joseph</div></div><br />
</div></div></div>
<br />
</div></blockquote><img src="https://u8034135.ct.sendgrid.net/wf/open?upn=u001.steKuNAJjjnSWQwv3nhlZ7-2FROd-2BPYtyTvwYjM88pgIEZtU9VoNpwxlacKvVWa4Wo2ejUmweHNUS-2BP1AZCvYxGK0RUcSA0-2FrcwMc7yEXkbvTbkBEAim9pmrjIuoiS1kByXZXBVePZgM0JIkJ-2FgCEFm1BBQUBIdlQi2fvcKz1nldeFVj4jIYanfk-2FXSw598nYQpG8ug7Icy87JcO1zqP7ybkUhKZmFzBUC50BukA1fF8WTn3-2FPOq4NbdbFNk12HR18feoC6tlYXDtbSkPKUP8ag6iH-2BcKrCqku0s2cWg-2BOzkMf6nMoK-2B5KFczJ3oJw1Jd-2FMW9oCo11XwUErJnzPPZLel-2FOWmCQvXlAlfT0NWRK-2BIpvDNZ-2Fp-2BpV4zDu9USZQYPDIWNgOSCgSKsQ4rcxmKeAX5SweKpDMdChqGAyFS0S8iQ-3D" alt="" width="1" height="1" border="0" style="height:1px !important;width:1px !important;border-width:0 !important;margin-top:0 !important;margin-bottom:0 !important;margin-right:0 !important;margin-left:0 !important;padding-top:0 !important;padding-bottom:0 !important;padding-right:0 !important;padding-left:0 !important;"/>