toad.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon server operated by David Troy, a tech pioneer and investigative journalist addressing threats to democracy. Thoughtful participation and discussion welcome.

Administered by:

Server stats:

218
active users

#oop

1 post1 participant1 post today
Simon Brooke<p><span class="h-card" translate="no"><a href="https://babka.social/@serge" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>serge</span></a></span> Is Scratch not essentially based on <a href="https://mastodon.scot/tags/Smalltalk" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Smalltalk</span></a>? Not knocking it, Smalltalk is also an excellent language, but <a href="https://mastodon.scot/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> is a different, and in my opinion more fundamental, paradigm than <a href="https://mastodon.scot/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a>, and one which I believe it benefits children to be introduced to first.</p>
Zelphir Kaltstahl<p>I also got experience with the following (5 = a lot, 1 = a little) :</p><p><a href="https://mastodon.social/tags/machinelearning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>machinelearning</span></a> <a href="https://mastodon.social/tags/ml" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ml</span></a> (3) (I have implemented some ML models myself in the past, for learning purposes.) <br><a href="https://mastodon.social/tags/guix" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>guix</span></a> (3) (Using it for reproducible setups of projects.)<br><a href="https://mastodon.social/tags/functionalprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalprogramming</span></a> <a href="https://mastodon.social/tags/fp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fp</span></a> (5) (Doing it in my own projects.)<br><a href="https://mastodon.social/tags/objectorientedprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>objectorientedprogramming</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> (4) (last job and past xp in my own projects.)<br><a href="https://mastodon.social/tags/CI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CI</span></a> / <a href="https://mastodon.social/tags/CD" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CD</span></a> (3) (Last job)<br><a href="https://mastodon.social/tags/make" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>make</span></a> (4) (using it for my own project setups and convenience)<br><a href="https://mastodon.social/tags/testing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>testing</span></a> (4) (last job, own projects)</p>
Programming Quotes<p>Objects are abstractions of processing. Threads are abstractions of schedule.</p><p> — James O. Coplien</p><p><a href="https://mastodon.social/tags/objects" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>objects</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://mastodon.social/tags/threads" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>threads</span></a></p>
Paolo Amoroso<p>Don't mind me, I'm just poking around this newfangled OOP thing with LOOPS on Medley Interlisp. LOOPS (Lisp Object-Oriented Programming System) is the object extension of Interlisp.</p><p><a href="https://oldbytes.space/tags/interlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interlisp</span></a> <a href="https://oldbytes.space/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> <a href="https://oldbytes.space/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://oldbytes.space/tags/retrocomputing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrocomputing</span></a></p>
Rafael Perez<p>Russian developer Yegor from yegor256.com uses a simple example of two similar approaches to modeling an action, and their implications from an object-oriented design and programming patterns perspective. One of the two approaches provides superior extensibility, data encapsulation, and more flexible error handling. </p><p>"remove(42) vs. find(42).remove()"</p><p><a href="https://www.yegor256.com/2025/06/22/retrieve-or-remove.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">yegor256.com/2025/06/22/retrie</span><span class="invisible">ve-or-remove.html</span></a></p><p><a href="https://mastodon.social/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://mastodon.social/tags/design" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>design</span></a> <a href="https://mastodon.social/tags/patterns" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>patterns</span></a></p>
Paolo Amoroso<p>The LOOPS primer, published in 1987, captured well the essence of exploratory programming in Lisp:</p><blockquote><p>The LOOPS interface provides both a programming tool and a thinking tool. As you develop a new system, each preliminary version provides an object for thought and discussion. The preliminary versions are a crucial part of the design process.</p></blockquote><p>LOOPS (Lisp Object-Oriented Programming System) is the OOP extension of Interlisp.</p><p><a href="http://www.bitsavers.org/pdf/xerox/interlisp-d/198510_Koto/3102242_Xerox_LOOPS_A_Friendly_Primer_Mar87.pdf#page=60" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">http://www.</span><span class="ellipsis">bitsavers.org/pdf/xerox/interl</span><span class="invisible">isp-d/198510_Koto/3102242_Xerox_LOOPS_A_Friendly_Primer_Mar87.pdf#page=60</span></a></p><p><a href="https://oldbytes.space/tags/interlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interlisp</span></a> <a href="https://oldbytes.space/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://oldbytes.space/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a></p>
screwlisp<p><a href="https://gamerplus.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://gamerplus.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://gamerplus.org/tags/amop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>amop</span></a> <a href="https://gamerplus.org/tags/mop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mop</span></a> <a href="https://gamerplus.org/tags/metaobjectProtocol" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>metaobjectProtocol</span></a> <a href="https://gamerplus.org/tags/exercise" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>exercise</span></a> <a href="https://gamerplus.org/tags/closette" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>closette</span></a> <a href="https://gamerplus.org/tags/learnToCode" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>learnToCode</span></a> (my own experience) <a href="https://gamerplus.org/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <br><a href="https://screwlisp.small-web.org/amop/eg1/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/amop/e</span><span class="invisible">g1/</span></a></p><p>Today I simply share and solve (hopefully!) The Art of the Metaobject Protocol exercise 1.1</p><p>(the softball generic classes <a href="https://gamerplus.org/tags/memoization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>memoization</span></a> exercise from chapter 1)</p><p>I just added a lexical closure of hash tables.</p><p><span class="h-card" translate="no"><a href="https://mastodon.scot/@simoninireland" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>simoninireland</span></a></span> wrote about the art of the metaobject protocol in his <a href="https://gamerplus.org/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> bibliography a year ago. <a href="https://simondobson.org/2024/07/23/the-art-of-the-metaobject-protocol/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">simondobson.org/2024/07/23/the</span><span class="invisible">-art-of-the-metaobject-protocol/</span></a></p>
Alyx Woodward (she/her) of Pnictogen<p>So. Who likes <a href="https://science.social/tags/object" rel="nofollow noopener" target="_blank">#object</a> oriented <a href="https://science.social/tags/programming" rel="nofollow noopener" target="_blank">#programming</a>? <a href="https://science.social/tags/OOP" rel="nofollow noopener" target="_blank">#OOP</a> that's still a buzzword, right? Who likes it? I don't but I don't want to start complaining just yet. ~Alyx</p>
screwlisp<p><a href="https://gamerplus.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://gamerplus.org/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://gamerplus.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://gamerplus.org/tags/GUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GUI</span></a> <a href="https://gamerplus.org/tags/app" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>app</span></a> <a href="https://gamerplus.org/tags/McCLIM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>McCLIM</span></a> <a href="https://gamerplus.org/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a> <a href="https://gamerplus.org/tags/devlog" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>devlog</span></a> <a href="https://screwlisp.small-web.org/lispgames/hurkling-onwards/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/lispga</span><span class="invisible">mes/hurkling-onwards/</span></a> <a href="https://gamerplus.org/tags/hurkle" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hurkle</span></a> </p><p>Well, it's pretty graphical now. Yes, table columns goofily resize and the history of button presses appear in the interactor shell: Really I just wanted to show you those features working.</p><p>Next article, I'll add two more asks and "launch" the game on itch.io.</p><p>Anyone else have a McCLIM show-and-tell?</p>
The Medley Interlisp Project<p>In the 1980s Xerox PARC taught courses on LOOPS (Lisp Object-Oriented Programming System), the object extension of Interlisp. The participants learned to develop knowledge systems in a simulation game called Truckin which is still available on Medley.</p><p><a href="https://ojs.aaai.org/aimagazine/index.php/aimagazine/article/view/400" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">ojs.aaai.org/aimagazine/index.</span><span class="invisible">php/aimagazine/article/view/400</span></a></p><p><a href="https://fosstodon.org/tags/retrocomputing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrocomputing</span></a> <a href="https://fosstodon.org/tags/interlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interlisp</span></a> <a href="https://fosstodon.org/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a></p>
The Medley Interlisp Project<p>Published in 1987, "Xerox LOOPS, A Friendly Primer" is a concise tutorial to the LOOPS (Lisp Object-Oriented Programming System) object extension of Interlisp. Some chapters of this copy are in the wrong order but all the content is there.</p><p><a href="http://www.bitsavers.org/pdf/xerox/interlisp-d/198510_Koto/3102242_Xerox_LOOPS_A_Friendly_Primer_Mar87.pdf" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">http://www.</span><span class="ellipsis">bitsavers.org/pdf/xerox/interl</span><span class="invisible">isp-d/198510_Koto/3102242_Xerox_LOOPS_A_Friendly_Primer_Mar87.pdf</span></a></p><p><a href="https://fosstodon.org/tags/interlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interlisp</span></a> <a href="https://fosstodon.org/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> <a href="https://fosstodon.org/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a></p>
Dev Leader<p>Are you learning the basics of composition in object-oriented programming?</p><p>Read more here:<br><a href="https://www.devleader.ca/2024/04/04/examples-of-composition-in-csharp-a-simple-guide-for-beginners/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">devleader.ca/2024/04/04/exampl</span><span class="invisible">es-of-composition-in-csharp-a-simple-guide-for-beginners/</span></a></p><p><a href="https://hachyderm.io/tags/Coding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Coding</span></a> <a href="https://hachyderm.io/tags/Programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programming</span></a> <a href="https://hachyderm.io/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a> <a href="https://hachyderm.io/tags/CSharp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CSharp</span></a> <a href="https://hachyderm.io/tags/DotNet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DotNet</span></a></p>
Dev Leader<p>Are you learning the basics of inheritance in object-oriented programming?</p><p>Read more here:<br><a href="https://www.devleader.ca/2024/04/03/examples-of-inheritance-in-csharp-a-simplified-introduction-to-oop/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">devleader.ca/2024/04/03/exampl</span><span class="invisible">es-of-inheritance-in-csharp-a-simplified-introduction-to-oop/</span></a></p><p><a href="https://hachyderm.io/tags/Coding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Coding</span></a> <a href="https://hachyderm.io/tags/Programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programming</span></a> <a href="https://hachyderm.io/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a> <a href="https://hachyderm.io/tags/CSharp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CSharp</span></a> <a href="https://hachyderm.io/tags/DotNet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DotNet</span></a></p>
Aral Balkan<p>New Kitten Release 🥳</p><p><a href="https://kitten.small-web.org" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">kitten.small-web.org</span><span class="invisible"></span></a></p><p>(Run `kitten update` to update your dev machines. Production machines will automatically update in a couple of hours.)</p><p>• You can now add a generic script block to your markdown pages (see <a href="https://mastodon.ar.al/@aral/114432417394114105" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">mastodon.ar.al/@aral/114432417</span><span class="invisible">394114105</span></a>)</p><p>• Markdown pages can now be `KittenPage` instances and attach `KittenComponent` instances (so you get a full server-side component hierarchy with an event-based workflow; ideal for authenticated pages where you can be use only the author of the page will be accessing them and thus the additional memory and processing overhead are not issues. Isn’t the Small Web great? Only having instances of one makes it possible to optimise so many things for the human experience instead of vertical scale of the data farming machine.)</p><p>• Two new examples showcase the new features: <a href="https://codeberg.org/kitten/app/src/branch/main/examples/streaming-html/markdown-script-simple-components" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/kitten/app/src/br</span><span class="invisible">anch/main/examples/streaming-html/markdown-script-simple-components</span></a> and <a href="https://codeberg.org/kitten/app/src/branch/main/examples/streaming-html/markdown-kitten-components" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/kitten/app/src/br</span><span class="invisible">anch/main/examples/streaming-html/markdown-kitten-components</span></a></p><p>• Attributes with object values are no longer serialised into the DOM (but your components’ render functions will continue to receive them, of course.) This is because only string values make sense for attributes in the context of the HTML DOM. (You can still, of course, have stringified representations of objects in attributes, as used by the `data` attribute to pass data from nodes to event handers on the server.)</p><p><a href="https://mastodon.ar.al/tags/Kitten" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Kitten</span></a> <a href="https://mastodon.ar.al/tags/SmallWeb" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SmallWeb</span></a> <a href="https://mastodon.ar.al/tags/SmallTech" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SmallTech</span></a> <a href="https://mastodon.ar.al/tags/kittenRelease" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>kittenRelease</span></a> <a href="https://mastodon.ar.al/tags/markdown" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>markdown</span></a> <a href="https://mastodon.ar.al/tags/scripting" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>scripting</span></a> <a href="https://mastodon.ar.al/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a> <a href="https://mastodon.ar.al/tags/eventModel" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eventModel</span></a> <a href="https://mastodon.ar.al/tags/web" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>web</span></a> <a href="https://mastodon.ar.al/tags/dev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dev</span></a></p>
lispm<p><span class="h-card" translate="no"><a href="https://fosstodon.org/@amoroso" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>amoroso</span></a></span> <a href="https://mastodon.social/tags/clos" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>clos</span></a> <a href="https://mastodon.social/tags/commonlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonlisp</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://mastodon.social/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> there was still a choice between various proposals then...</p><p>But the actual CLOS was not far away - the standard proposal was published in September 1988: <a href="https://dl.acm.org/toc/sigplan/1988/23/SI" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">dl.acm.org/toc/sigplan/1988/23</span><span class="invisible">/SI</span></a> <br>Available above as a PDF. The final version was then published with the ANSI CL standard.</p>
Paolo Amoroso<p>As installments of the ARTIFICIAL INTELLIGENCE column by Ernest Tello, in 1987 Dr. Dobb's Journal published a series of articles on OOP and object-oriented extensions for Common Lisp and Scheme. Back then CLOS was not yet on the radar but the Common Lisp extensions the articles covered already contained the main ideas of CLOS.</p><p><a href="https://archive.org/details/1987-03-dr-dobbs-journal/page/126/mode/2up?view=theater" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">archive.org/details/1987-03-dr</span><span class="invisible">-dobbs-journal/page/126/mode/2up?view=theater</span></a></p><p><a href="https://archive.org/details/1987-04-dr-dobbs-journal/page/146/mode/2up?view=theater" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">archive.org/details/1987-04-dr</span><span class="invisible">-dobbs-journal/page/146/mode/2up?view=theater</span></a></p><p><a href="https://archive.org/details/1987-05-dr-dobbs-journal/page/132/mode/2up?view=theater" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">archive.org/details/1987-05-dr</span><span class="invisible">-dobbs-journal/page/132/mode/2up?view=theater</span></a></p><p><a href="https://fosstodon.org/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://fosstodon.org/tags/CommonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CommonLisp</span></a> <a href="https://fosstodon.org/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> <a href="https://fosstodon.org/tags/retrocomputing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrocomputing</span></a></p>
dcode<p>Functional vs object-oriented vs procedural programming?</p><p><a href="https://mastodon.social/tags/coding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>coding</span></a> <a href="https://mastodon.social/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://mastodon.social/tags/development" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>development</span></a> <a href="https://mastodon.social/tags/functionalprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalprogramming</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> <a href="https://mastodon.social/tags/style" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>style</span></a> <a href="https://mastodon.social/tags/procedural" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>procedural</span></a></p>
WetHat💦<p>SOLID Principle = Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion.</p><p>A compact reference for developers with examples in C#</p><p><a href="https://dev.to/imajenasyon/solid-principle-4jno" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">dev.to/imajenasyon/solid-princ</span><span class="invisible">iple-4jno</span></a></p><p><a href="https://fosstodon.org/tags/Programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programming</span></a> <a href="https://fosstodon.org/tags/Csharp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Csharp</span></a> <a href="https://fosstodon.org/tags/BestPractice" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>BestPractice</span></a> <a href="https://fosstodon.org/tags/SOLIDprinciple" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SOLIDprinciple</span></a> <a href="https://fosstodon.org/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a></p>
Programming Quotes<p>The problem with object-oriented languages is they've got all this implicit environment that they carry around with them. You wanted a banana but what you got was a gorilla holding the banana and the entire jungle.</p><p> — Joe Armstrong, Jason Gorman</p><p><a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a></p>
Riley S. Faelan<p>The principle of data hiding in <a href="https://toot.cat/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a> is an evil principle, for it seeks to instill a product/consumer dichotomy in the programmer's mind, and this is inherently hierarchical and <a href="https://toot.cat/tags/oopressive" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oopressive</span></a>.</p>