<p>Here is the program I've been working on: <a>https://bitbucket.org/hinst/sillychat</a></p><p>It was created with purpose of demonstrating how reference-counted objects could be used in a program which actually does something and now it works more or less.</p><p> </p><p>And it's beautiful</p><p>ಠ_ಠ </p><p>Because there are no .Free calls, everything is released automatically. Well, almost.</p><p> </p><p>The program is a simple text chat; "proof-of-concept". It has client and server parts. I documented the project [briefly] in README.md file, the documentation is also displayed on the project page (link above).</p><p>I have many reference-counted objects in it: server, clients, critical sections, sockets, memory blocks, buffers, threads. And they work. When I have heaptrc enabled, it reports no memory leaks.</p><p> </p><p>Anyone who doubts benefits of automatic reference counting is welcome to examine my code and see how it benefits from not having to release instances manually. Especially the memory streams that are being moved around and would otherwise have to be released manually. If you are not familiar with Mercurial version control system, you can download repository from project page, there should be download button on the left.</p><p> </p><p>06.11.2014, 00:02, "Sven Barth" <<a href="mailto:pascaldragon@googlemail.com">pascaldragon@googlemail.com</a>>:</p><blockquote> Am 05.11.2014 21:55 schrieb <<a href="mailto:hinstance@yandex.ru">hinstance@yandex.ru</a>>:<br /><blockquote> Not bad. I confirm that both Lazarus 1.3 and variables of refcounted type declared in another unit work now.</blockquote> Good to know :)<br /><blockquote> I wanted to assemble some prototype application with refcounted objects to see how would such feature behave in a more or less complex program; but in spite of lack of free time I am not sure how much time it will take</blockquote> Take your time. The branch is not going anywhere for now as I first want to finish my work on packages, generic methods and maybe some other features like extended RTTI, invoke, etc. :)<br /><br /> Regards,<br /> Sven<br /> ,<br /><br /> _______________________________________________<br /> fpc-devel maillist  -  <a href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a><br /> <a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a></blockquote>