<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: shawn</title><link>https://news.ycombinator.com/user?id=shawn</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 21 May 2026 05:05:05 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=shawn" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by shawn in "ECMAScript regular expressions are getting better (2017)"]]></title><description><![CDATA[
<p><i>Another proposal specifies certain legacy RegExp features, such as the RegExp.prototype.compile method and the static properties from RegExp.$1 to RegExp.$9. Although these features are deprecated, unfortunately they cannot be removed from the web platform without introducing compatibility issues. Thus, standardizing their behavior and getting engines to align their implementations is the best way forward. This proposal is important for web compatibility.</i><p>Interesting view. Is this better than a "let it break" approach?<p>Link rot already claims N% of websites per year. I wonder if cleaning up APIs like this one would increase N noticeably.</p>
]]></description><pubDate>Wed, 28 Nov 2018 14:07:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=18551508</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18551508</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18551508</guid></item><item><title><![CDATA[New comment by shawn in "Hyperscript Tagged Markup: JSX alternative using standard tagged templates"]]></title><description><![CDATA[
<p><i>Writing code, not strings, means you can do everything to it that you can do to code. You can type check code. You can lint it. You can optimize it, compile it, validate it, syntax highlight it, format it with tools like Prettier, tree shake it...</i><p>Both intellij and emacs do all of these things for Vue code. That seems to cover >90% of developers' tooling needs.<p>Also, code itself is a string. Code is data.</p>
]]></description><pubDate>Thu, 22 Nov 2018 19:41:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=18512073</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18512073</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18512073</guid></item><item><title><![CDATA[New comment by shawn in "Medium is a poor choice for blogging"]]></title><description><![CDATA[
<p>This is not correct. I have sent many which have gone unanswered. I can show them if you'd like.<p>Dan answers if he likes you. It's as simple as that. If he doesn't, he either filters your emails and never sees them, or refuses to answer them.<p>You are one data point. Please don't extrapolate it to those of us who have tried for months to get answers to specific questions.</p>
]]></description><pubDate>Wed, 14 Nov 2018 15:11:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=18450362</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18450362</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18450362</guid></item><item><title><![CDATA[New comment by shawn in "Making rain simulation as real as possible"]]></title><description><![CDATA[
<p>Hah.<p>Thank you for finding that.<p>Welp. It's identical. I even tried to defend the current link with "Well, some cool things can happen when you hook up a UI to a shader..." but the UI doesn't even do anything except turn the rain off and on.<p>There's <i>lightning</i> too in that other one! That's so cool.</p>
]]></description><pubDate>Sun, 11 Nov 2018 21:24:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=18428684</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18428684</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18428684</guid></item><item><title><![CDATA[New comment by shawn in "Should you use www or not in your domain? (2017)"]]></title><description><![CDATA[
<p><i>When your site grows large and you move it to an hosted service, or wants to point it to an Web Application Firewall or a DDoS mitigator, you might want to use a CNAME type record, to point the hostname to another flexible hostname that the vendor manages depending on your traffic and needs.<p>Now, if your website is hosted at the origin (“example.com”), you can’t do that. But there is no issue with the “www” hostname being a CNAME record. So if you want any scaling flexibility, now or in the future, you should go with the www hostname from the beginning.</i><p>Granted, his blog was knocked offline by HN. But would a CNAME have saved their Wordpress site?<p>FWIW, <a href="https://ycombinator.com/" rel="nofollow">https://ycombinator.com/</a> redirects to <a href="https://www.ycommbiator.com" rel="nofollow">https://www.ycommbiator.com</a>, as does Reddit.</p>
]]></description><pubDate>Sun, 11 Nov 2018 15:07:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=18426685</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18426685</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18426685</guid></item><item><title><![CDATA[New comment by shawn in "$vau: the ultimate abstraction (2010) [pdf]"]]></title><description><![CDATA[
<p>$vau was introduced in Racket v6.11. You'll need to upgrade.</p>
]]></description><pubDate>Fri, 09 Nov 2018 23:53:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=18419039</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18419039</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18419039</guid></item><item><title><![CDATA[New comment by shawn in "$vau: the ultimate abstraction (2010) [pdf]"]]></title><description><![CDATA[
<p>According to Racket, the type is 'ultimate-abstraction':<p><pre><code>  $ racket -I swindle
  Welcome to Racket v6.12.
  > (class-of 42)
  #<primitive-class:exact-integer>
  > (class-of $vau)
  #<primitive-class:ultimate-abstraction>
</code></pre>
I guess the paper wasn't lying.</p>
]]></description><pubDate>Fri, 09 Nov 2018 17:37:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=18416212</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18416212</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18416212</guid></item><item><title><![CDATA[New comment by shawn in "$vau: the ultimate abstraction (2010) [pdf]"]]></title><description><![CDATA[
<p>If anyone wants to implement this, I believe you can do so in Lumen Lisp: <a href="https://docs.ycombinator.lol/" rel="nofollow">https://docs.ycombinator.lol/</a><p>In particular, macros like <a href="https://imgur.com/C4NL0OB" rel="nofollow">https://imgur.com/C4NL0OB</a> are pretty effortless to write.</p>
]]></description><pubDate>Fri, 09 Nov 2018 15:52:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=18415287</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18415287</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18415287</guid></item><item><title><![CDATA[The Nimble Type Inferencer for Common Lisp-84]]></title><description><![CDATA[
<p>Article URL: <a href="http://home.pipeline.com/~hbaker1/TInference.html">http://home.pipeline.com/~hbaker1/TInference.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=18396032">https://news.ycombinator.com/item?id=18396032</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 07 Nov 2018 00:02:42 +0000</pubDate><link>http://home.pipeline.com/~hbaker1/TInference.html</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18396032</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18396032</guid></item><item><title><![CDATA[New comment by shawn in "Colorizing and restoring old images with deep learning"]]></title><description><![CDATA[
<p>Your brain is applying far more interpretation to color than people are consciously aware of.<p><a href="https://raw.githubusercontent.com/jantic/DeOldify/master/result_images/WhirlingHorse.jpg" rel="nofollow">https://raw.githubusercontent.com/jantic/DeOldify/master/res...</a><p>His face is arguably too red. But on average it’s fine. (Amusing: is this comment correct, or unconsciously biased by the lack of knowledge of what native Americans actually look like? I admit the latter is possible.)<p>Humans interpret colors thanks to context. When you strip away context, it’s easy to come up with things that fool you. (Optical illusions are the limit case of this.)<p>See DaVinci’s journals on color. They are worth studying, and most entries are so short they may as well be tweets. <a href="http://www.sacred-texts.com/aor/dv/dvs005.htm" rel="nofollow">http://www.sacred-texts.com/aor/dv/dvs005.htm</a></p>
]]></description><pubDate>Fri, 02 Nov 2018 16:28:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=18364335</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18364335</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18364335</guid></item><item><title><![CDATA[New comment by shawn in "Israel silent as Iran hit by computer virus more violent than Stuxnet – report"]]></title><description><![CDATA[
<p>Eh, I think I disagree. If a story is good for HN, it doesn't matter where it came from or who posted it, or whether it was a bot. That fact is true independently of any other consideration.</p>
]]></description><pubDate>Thu, 01 Nov 2018 06:28:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=18351787</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18351787</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18351787</guid></item><item><title><![CDATA[New comment by shawn in "Israel silent as Iran hit by computer virus more violent than Stuxnet – report"]]></title><description><![CDATA[
<p>No need to guess. The code is public, and (judging by firsthand experience) they seem to be using a similar if not identical version: <a href="https://github.com/arclanguage/anarki/blob/f01d3f9c661eed05511711a0f3388ca2a1d34fa2/news.arc#L1524-L1538" rel="nofollow">https://github.com/arclanguage/anarki/blob/f01d3f9c661eed055...</a><p>New users can submit up to 2 stories every 3 hours. Bad users can submit up to 1 story every 3 hours.<p>Looks like the bot is submitting at precisely that limit, but the timestamps aren't quite accurate enough. Some interested user could check the API to get the full times.<p>I wish there were some way to contact the bot author. I want to see the code. It's no small feat to write an effective bot.</p>
]]></description><pubDate>Thu, 01 Nov 2018 04:37:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=18351492</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18351492</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18351492</guid></item><item><title><![CDATA[New comment by shawn in "How I lost my faith in Lisp (2002)"]]></title><description><![CDATA[
<p>Meanwhile, I ported Arc to JS: <a href="https://imgur.com/0Ba0NZN" rel="nofollow">https://imgur.com/0Ba0NZN</a><p>If LN turns into anything, it'll be because of Lisp, not in spite of it. It really doesn't matter that the world is phobic to it when you alone are the blacksmith.<p>One could argue "See? It's running in JS. Doesn't that mean Lisp is useless?"<p>Maybe. But macros are a thing. And when you can generate React on the fly, without having to make a class for every single thing you want to do, the power disparity starts becoming very apparent.<p>There are interesting Lisp codebases, but you have to dig for them. Abuse (a game engine) comes to mind. <a href="http://abuse.zoy.org/browser/abuse/trunk/data/lisp" rel="nofollow">http://abuse.zoy.org/browser/abuse/trunk/data/lisp</a><p>And what other language could let you add type inference with relatively little effort? <a href="https://web.archive.org/web/20070610012057/http://www.cs.indiana.edu/classes/c311/" rel="nofollow">https://web.archive.org/web/20070610012057/http://www.cs.ind...</a><p><a href="https://web.archive.org/web/20070615124421fw_/http://www.cs.indiana.edu/classes/c311/a10.html" rel="nofollow">https://web.archive.org/web/20070615124421fw_/http://www.cs....</a></p>
]]></description><pubDate>Wed, 31 Oct 2018 17:25:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=18347609</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18347609</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18347609</guid></item><item><title><![CDATA[New comment by shawn in "The X hole"]]></title><description><![CDATA[
<p>It's not really fair to say that someone's behavior in 2018 is determined by who they were in 2005.<p>No atom in their body is even the same. (Supposedly.)</p>
]]></description><pubDate>Fri, 26 Oct 2018 01:21:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=18306037</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18306037</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18306037</guid></item><item><title><![CDATA[New comment by shawn in "Ask HN: How do you monitor your websites?"]]></title><description><![CDATA[
<p><a href="https://updown.io/" rel="nofollow">https://updown.io/</a><p>Best value of any tool I've ever used. It does literally everything you asked. I didn't even know it checked SSL expiry till it pinged me.</p>
]]></description><pubDate>Wed, 24 Oct 2018 15:55:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=18293505</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18293505</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18293505</guid></item><item><title><![CDATA[New comment by shawn in "Show HN: Lisp with copying GC in 537 lines of C (plus Lisp 1.5 on top)"]]></title><description><![CDATA[
<p>I've been studying this for the past day. I just wanted to say: thank you. This is the most helpful and relevant resource for my work that I've come across in some time.<p>I really appreciate that you took the time to send me this.</p>
]]></description><pubDate>Tue, 16 Oct 2018 07:26:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=18227355</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18227355</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18227355</guid></item><item><title><![CDATA[New comment by shawn in "Brave New World Revisited, Revisited"]]></title><description><![CDATA[
<p>I am aware you feel these comments are abusive. But you are acting so cartoonishly evil in this instance – banning a 12-year member of HN for 3 months <i>solely</i> for asking why he was rate limited – that someone needs to stand up to you.<p>It’s true that I demanded an answer from you. But that was because your original decision to issue a rate limit was an overreaction. My comments in that thread were not significantly different from the various other discussions that people have on a daily basis about social issues.<p>You feel that it’s abusive to highlight this decision and continue to call attention to it. I feel it’s the only recourse left. I have tried for a very, very long time to come to some kind of understanding with you.<p>But the reason I’m doing this isn’t personal. It’s because I care about this community and am afraid of what you’re forcing it to become. From the recent “What do you hate about HN?” thread (<a href="https://news.ycombinator.com/item?id=18184914" rel="nofollow">https://news.ycombinator.com/item?id=18184914</a>):<p><i>I’ve been here for awhile (just about eight years), and the single biggest change I’ve noticed is the increasing presence of what I’ll call a “bourgeois tech monoculture.” This place used to be weirder, with more obscure links and discussions filled with academics and hackers. If you search the older archives, there are some really incredible conversations. Now it mostly seems to be nytimes articles commented on by upper-middle class engineers.</i><p>Here’s another: <a href="https://news.ycombinator.com/item?id=18185456" rel="nofollow">https://news.ycombinator.com/item?id=18185456</a><p><i>I miss Michael O. Church. Not that I always agreed with him, but he was really interesting, and his comments consistently made me think about my own biases and opinions in ways few others ever have.</i><p>I noticed when you referred pejoratively to yummyfajitas as “Socrates”. I didn’t know him, but I respected his writing. And he didn’t leave until you personally made him feel unwelcome. In fact, he left immediately after: <a href="https://news.ycombinator.com/threads?id=yummyfajitas" rel="nofollow">https://news.ycombinator.com/threads?id=yummyfajitas</a><p>You’ve become what pg calls a suit: image over substance; authority over reason.<p>But your actions go far deeper than most people know, or understand. People still do not understand that you personally flag (and therefore instantly kill) many comments per day. They believe users do this, not you acting alone. And anyone who dares disagree with you is silenced, one way or another.<p>I don’t know if you’ve been hunting trolls for so long that all you see are trolls, everywhere you look. All I know is that people are starting to notice.<p>Most attempts to stand up to authority fail: <a href="https://en.wikipedia.org/wiki/List_of_peasant_revolts#Chronological_list" rel="nofollow">https://en.wikipedia.org/wiki/List_of_peasant_revolts#Chrono...</a><p>I regret that mine might too. But my personal desire to participate in the site is overruled by the greater desire to see this community protected from your purge of unpopular opinion.<p>If you truly believe this is abusive, we’ll have to agree to disagree. History’s judgement will last longer than yours.</p>
]]></description><pubDate>Tue, 16 Oct 2018 03:44:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=18226264</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18226264</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18226264</guid></item><item><title><![CDATA[New comment by shawn in "Show HN: Lisp with copying GC in 537 lines of C (plus Lisp 1.5 on top)"]]></title><description><![CDATA[
<p><i>(make-vector length 0)</i><p>Interesting. That threw me off. I overlooked the previous paragraph:<p><i>In Emacs Lisp, an obarray is actually a vector. Each element of the vector is a bucket; its value is either an interned symbol whose name hashes to that bucket, or 0 if the bucket is empty. Each interned symbol has an internal link (invisible to the user) to the next symbol in the bucket. Because these links are invisible, there is no way to find all the symbols in an obarray except using mapatoms (below). The order of symbols in a bucket is not significant.</i><p>Thanks!</p>
]]></description><pubDate>Mon, 15 Oct 2018 12:35:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=18219155</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18219155</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18219155</guid></item><item><title><![CDATA[New comment by shawn in "Show HN: Lisp with copying GC in 537 lines of C (plus Lisp 1.5 on top)"]]></title><description><![CDATA[
<p>I actually need to do this for my lisp. Do you know if that class is available online? I only found things like <a href="http://mullr.github.io/micrologic/literate.html" rel="nofollow">http://mullr.github.io/micrologic/literate.html</a><p>which doesn’t seem to do type checking.</p>
]]></description><pubDate>Mon, 15 Oct 2018 01:09:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=18216692</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18216692</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18216692</guid></item><item><title><![CDATA[New comment by shawn in "Show HN: Lisp with copying GC in 537 lines of C (plus Lisp 1.5 on top)"]]></title><description><![CDATA[
<p>This isn’t true. Emacs interns strings in a global obarray, which is a simple array with linear search. I hear emacs scales well.</p>
]]></description><pubDate>Mon, 15 Oct 2018 01:04:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=18216670</link><dc:creator>shawn</dc:creator><comments>https://news.ycombinator.com/item?id=18216670</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18216670</guid></item></channel></rss>