Add target="_blank" to original links

This commit is contained in:
Ilia Demianenko 2022-06-12 05:04:21 -07:00
parent ee38870a47
commit 648c472416
1 changed files with 28 additions and 28 deletions

View File

@ -460,7 +460,7 @@ The pinned messages are some "checkpoints" in the discussion; chapter markers of
<div class="chatlog__message-primary">
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">1958-1966: A few different people gradually come up with the notion of structured data. Conventions for managing compound data made of multiple words in memory. If you have two points, you want their x and y coordinates close together and in the same relative order. Seems obvious, but wasn't! See <a href="http://akkartik.name/sketchpad-oo.png">http://akkartik.name/sketchpad-oo.png</a> from the Sketchpad thesis [1].
<span class="chatlog__markdown-preserve">1958-1966: A few different people gradually come up with the notion of structured data. Conventions for managing compound data made of multiple words in memory. If you have two points, you want their x and y coordinates close together and in the same relative order. Seems obvious, but wasn't! See <a href="http://akkartik.name/sketchpad-oo.png" target="_blank">http://akkartik.name/sketchpad-oo.png</a> from the Sketchpad thesis [1].
1960-1962: Ivan Sutherland works on Sketchpad. It presages many OO ideas, but they're all in the programmer's mind and prose (thesis) because the code is all machine code.
@ -470,7 +470,7 @@ The pinned messages are some "checkpoints" in the discussion; chapter markers of
1973-1975: Abstract data types by Barbara Liskov. Ignore internal details of how objects are laid out in memory. Focus instead on a small vocabulary of operations that can be performed using them. Interfaces, basically.[4]
1966-1975: Alan Kay coins OO after working on Smalltalk. (The first chapter of <a href="http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html">http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html</a> is better than my history above.) "Did not have C++ in mind." However, we're only halfway done.</span>
1966-1975: Alan Kay coins OO after working on Smalltalk. (The first chapter of <a href="http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html" target="_blank">http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html</a> is better than my history above.) "Did not have C++ in mind." However, we're only halfway done.</span>
<span class="chatlog__edited-timestamp" title="28-May-22 10:12 AM">(edited)</span>
</div>
@ -525,17 +525,17 @@ The pinned messages are some "checkpoints" in the discussion; chapter markers of
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">References
[1] <a href="https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-574.pdf">https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-574.pdf</a>
[2] <a href="https://hannemyr.com/cache/knojd_acm78.pdf">https://hannemyr.com/cache/knojd_acm78.pdf</a>
[3] <a href="https://en.wikipedia.org/wiki/The_Mythical_Man-Month">https://en.wikipedia.org/wiki/The_Mythical_Man-Month</a>
[4] <a href="https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.136.3043">https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.136.3043</a>
[5] <a href="https://dspace.mit.edu/bitstream/handle/1721.1/5794/AIM-349.pdf">https://dspace.mit.edu/bitstream/handle/1721.1/5794/AIM-349.pdf</a>
[6] <a href="https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/oop/yasos/swob.txt">https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/oop/yasos/swob.txt</a>
[7] <a href="https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you">https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you</a>
[8] <a href="https://news.ycombinator.com/item?id=785601">https://news.ycombinator.com/item?id=785601</a>
[9] <a href="https://blog.plover.com/prog/design-patterns.html">https://blog.plover.com/prog/design-patterns.html</a>
[10] First HN submission that composition &gt; inheritance: <a href="https://web.archive.org/web/20080508155333/http://www.eflorenzano.com/blog/post/inheritance-vs-composition">https://web.archive.org/web/20080508155333/http://www.eflorenzano.com/blog/post/inheritance-vs-composition</a>.
[11] <a href="https://www.youtube.com/watch?v=6YbK8o9rZfI">https://www.youtube.com/watch?v=6YbK8o9rZfI</a></span>
[1] <a href="https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-574.pdf" target="_blank">https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-574.pdf</a>
[2] <a href="https://hannemyr.com/cache/knojd_acm78.pdf" target="_blank">https://hannemyr.com/cache/knojd_acm78.pdf</a>
[3] <a href="https://en.wikipedia.org/wiki/The_Mythical_Man-Month" target="_blank">https://en.wikipedia.org/wiki/The_Mythical_Man-Month</a>
[4] <a href="https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.136.3043" target="_blank">https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.136.3043</a>
[5] <a href="https://dspace.mit.edu/bitstream/handle/1721.1/5794/AIM-349.pdf" target="_blank">https://dspace.mit.edu/bitstream/handle/1721.1/5794/AIM-349.pdf</a>
[6] <a href="https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/oop/yasos/swob.txt" target="_blank">https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/oop/yasos/swob.txt</a>
[7] <a href="https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you" target="_blank">https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you</a>
[8] <a href="https://news.ycombinator.com/item?id=785601" target="_blank">https://news.ycombinator.com/item?id=785601</a>
[9] <a href="https://blog.plover.com/prog/design-patterns.html" target="_blank">https://blog.plover.com/prog/design-patterns.html</a>
[10] First HN submission that composition &gt; inheritance: <a href="https://web.archive.org/web/20080508155333/http://www.eflorenzano.com/blog/post/inheritance-vs-composition" target="_blank">https://web.archive.org/web/20080508155333/http://www.eflorenzano.com/blog/post/inheritance-vs-composition</a>.
[11] <a href="https://www.youtube.com/watch?v=6YbK8o9rZfI" target="_blank">https://www.youtube.com/watch?v=6YbK8o9rZfI</a></span>
</div>
@ -1303,8 +1303,8 @@ Regarding (1), I personally believe this is much better solved with a well desig
Regarding (2), this is a weird linguistic typology thing which I doubt most people will even know unless they speak multiple languages. If you want to learn more about word orders in different languages, I recommend reading the following:
* <a href="https://en.wikipedia.org/wiki/Subject%E2%80%93verb%E2%80%93object_word_order">https://en.wikipedia.org/wiki/Subject%E2%80%93verb%E2%80%93object_word_order</a>
* <a href="https://en.wikipedia.org/wiki/Verb%E2%80%93subject%E2%80%93object_word_order">https://en.wikipedia.org/wiki/Verb%E2%80%93subject%E2%80%93object_word_order</a>
* <a href="https://en.wikipedia.org/wiki/Subject%E2%80%93verb%E2%80%93object_word_order" target="_blank">https://en.wikipedia.org/wiki/Subject%E2%80%93verb%E2%80%93object_word_order</a>
* <a href="https://en.wikipedia.org/wiki/Verb%E2%80%93subject%E2%80%93object_word_order" target="_blank">https://en.wikipedia.org/wiki/Verb%E2%80%93subject%E2%80%93object_word_order</a>
Regarding (3), this is purely a tooling issue. It comes down to two main aspects:
@ -2202,7 +2202,7 @@ yes exactly, that's part of what I mean by "mere" (i.e. they're not wound up in
<div class="chatlog__message-primary">
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">in self (<a href="https://en.wikipedia.org/wiki/Self_(programming_language)">https://en.wikipedia.org/wiki/Self_(programming_language)</a>) you have the idea of a prototype as the unit of implementation delegation</span>
<span class="chatlog__markdown-preserve">in self (<a href="https://en.wikipedia.org/wiki/Self_(programming_language)" target="_blank">https://en.wikipedia.org/wiki/Self_(programming_language)</a>) you have the idea of a prototype as the unit of implementation delegation</span>
</div>
@ -2840,7 +2840,7 @@ this is why I think mere methods and OOP are separate concerns. Having a nice .
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">One wonderful book that made the rounds last year: <a href="https://buttondown.email/hillelwayne/archive/why-you-should-read-data-and-reality">https://buttondown.email/hillelwayne/archive/why-you-should-read-data-and-reality</a></span>
<span class="chatlog__markdown-preserve">One wonderful book that made the rounds last year: <a href="https://buttondown.email/hillelwayne/archive/why-you-should-read-data-and-reality" target="_blank">https://buttondown.email/hillelwayne/archive/why-you-should-read-data-and-reality</a></span>
</div>
@ -2874,8 +2874,8 @@ this is why I think mere methods and OOP are separate concerns. Having a nice .
By this statement, I mean that <em>artificially</em> conforming to any/all relations between data and types to an artificial hierarchy of <em>agency</em> is a form of naïve-Aristotelian metaphysics. Since there is no actual <em>agency</em> in the programming objects, it is a partial fallacy (and as previously stated, category error). When trying to conform a program to have a particular structure when it does not naturally, the absence of a structure in a program in more useful than a bad structure.
[1] <a href="https://en.wikipedia.org/wiki/Category_mistake">https://en.wikipedia.org/wiki/Category_mistake</a>
[2] <a href="https://www.gingerbill.org/article/2020/05/31/progamming-pragmatist-proverbs/">https://www.gingerbill.org/article/2020/05/31/progamming-pragmatist-proverbs/</a></span>
[1] <a href="https://en.wikipedia.org/wiki/Category_mistake" target="_blank">https://en.wikipedia.org/wiki/Category_mistake</a>
[2] <a href="https://www.gingerbill.org/article/2020/05/31/progamming-pragmatist-proverbs/" target="_blank">https://www.gingerbill.org/article/2020/05/31/progamming-pragmatist-proverbs/</a></span>
</div>
@ -4043,7 +4043,7 @@ Certainly though the term "design patterns" has come to exclusively mean "object
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve"><a href="https://en.wikipedia.org/wiki/Software_design">https://en.wikipedia.org/wiki/Software_design</a> does have a list. I guess I'm not aware of it because I don't do design <img loading="lazy" class="chatlog__emoji " alt="😅" title="sweat_smile" src=".\files\twemoji_1f605.svg"></span>
<span class="chatlog__markdown-preserve"><a href="https://en.wikipedia.org/wiki/Software_design" target="_blank">https://en.wikipedia.org/wiki/Software_design</a> does have a list. I guess I'm not aware of it because I don't do design <img loading="lazy" class="chatlog__emoji " alt="😅" title="sweat_smile" src=".\files\twemoji_1f605.svg"></span>
</div>
@ -4289,7 +4289,7 @@ Certainly though the term "design patterns" has come to exclusively mean "object
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">Among other critiques, this approach causes some blind spots because you get trained to think in terms of nouns and deemphasize verbs: <a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html">http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html</a></span>
<span class="chatlog__markdown-preserve">Among other critiques, this approach causes some blind spots because you get trained to think in terms of nouns and deemphasize verbs: <a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html" target="_blank">http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html</a></span>
</div>
@ -4348,7 +4348,7 @@ Certainly though the term "design patterns" has come to exclusively mean "object
<div class="chatlog__reference-author" style="color: rgb(46, 204, 113)" title="Kartik Agaram#9408">Kartik Agaram</div>
<div class="chatlog__reference-content">
<span class="chatlog__reference-link" onclick="scrollToMessage(event, '980174543953993738')">
Among other critiques, this approach causes some blind spots because you get trained to think in terms of nouns and deemphasize verbs: <a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html">http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html</a> </span>
Among other critiques, this approach causes some blind spots because you get trained to think in terms of nouns and deemphasize verbs: <a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html" target="_blank">http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html</a> </span>
</div>
</div>
@ -4436,7 +4436,7 @@ Among other critiques, this approach causes some blind spots because you get tra
<div class="chatlog__message-primary">
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">He talked about it some on our podcast episode about programming education, as I recall (<a href="https://handmade.network/podcast/ep/eeac46c9-5e90-4b1c-9104-cff49734764d">https://handmade.network/podcast/ep/eeac46c9-5e90-4b1c-9104-cff49734764d</a>)</span>
<span class="chatlog__markdown-preserve">He talked about it some on our podcast episode about programming education, as I recall (<a href="https://handmade.network/podcast/ep/eeac46c9-5e90-4b1c-9104-cff49734764d" target="_blank">https://handmade.network/podcast/ep/eeac46c9-5e90-4b1c-9104-cff49734764d</a>)</span>
</div>
@ -5796,7 +5796,7 @@ I do think it's interesting though that it was still a more effective model than
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">That HN comment (<a href="https://news.ycombinator.com/item?id=785601#785833)">https://news.ycombinator.com/item?id=785601#785833)</a> actually hit me like a pile of bricks. Until then I'd only heard that you used inheritance to model is-a relationships, then wandered off because that seemed to suck.</span>
<span class="chatlog__markdown-preserve">That HN comment (<a href="https://news.ycombinator.com/item?id=785601#785833" target="_blank">https://news.ycombinator.com/item?id=785601#785833</a>) actually hit me like a pile of bricks. Until then I'd only heard that you used inheritance to model is-a relationships, then wandered off because that seemed to suck.</span>
</div>
@ -6760,7 +6760,7 @@ yes how many times has a junior programmer agonized over "is-a" vs "has-a"
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">With hindsight, the question I'm left with is, why did anyone ever consider this a good thing. Alan Kay made the analogy with biological cells in <a href="http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html#4">http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html#4</a>, but back then (i.e. until the 90s when I started programming) we all assumed that was a good thing.</span>
<span class="chatlog__markdown-preserve">With hindsight, the question I'm left with is, why did anyone ever consider this a good thing. Alan Kay made the analogy with biological cells in <a href="http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html#4" target="_blank">http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html#4</a>, but back then (i.e. until the 90s when I started programming) we all assumed that was a good thing.</span>
</div>
@ -7121,7 +7121,7 @@ yes how many times has a junior programmer agonized over "is-a" vs "has-a"
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve"><a href="https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html">https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html</a></span>
<span class="chatlog__markdown-preserve"><a href="https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html" target="_blank">https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html</a></span>
</div>
@ -9608,7 +9608,7 @@ I suppose then that programming was just running into the very real problems of
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">Oh very interesting, hadn't seen this before: <a href="https://research.swtch.com/vgo-eng">https://research.swtch.com/vgo-eng</a></span>
<span class="chatlog__markdown-preserve">Oh very interesting, hadn't seen this before: <a href="https://research.swtch.com/vgo-eng" target="_blank">https://research.swtch.com/vgo-eng</a></span>
</div>
@ -12111,7 +12111,7 @@ Are the same as mine</span>
</div>
<div class="chatlog__content chatlog__markdown">
<span class="chatlog__markdown-preserve">(For future readers, here is a link to the top! <a href="https://discord.com/channels/239737791225790464/980152876846428221/980153085320130630">https://discord.com/channels/239737791225790464/980152876846428221/980153085320130630</a>)</span>
<span class="chatlog__markdown-preserve">(For future readers, here is a link to the top! <a href="https://discord.com/channels/239737791225790464/980152876846428221/980153085320130630" target="_blank">https://discord.com/channels/239737791225790464/980152876846428221/980153085320130630</a>)</span>
</div>