<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: Blikkentrekker</title><link>https://news.ycombinator.com/user?id=Blikkentrekker</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 10 Apr 2026 13:17:40 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Blikkentrekker" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Blikkentrekker in "The Australian government has announced gambling advertising reforms"]]></title><description><![CDATA[
<p>I think even the biggest hard drugs should be legal, again just because “people enjoy it”.<p>I'm fine with taxing it more in subsidized single-payer healthcare systems though but I also feel that should be done more consistently. I for instance also believe that say high heels should be taxed more because they're bad for one's health for similar reasons or unhealthy food but that's not “socially controversial” enough for that I get which is ultimately what it's always about. “health” is always just an excuse.</p>
]]></description><pubDate>Thu, 09 Apr 2026 17:59:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47707098</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47707098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47707098</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "The Australian government has announced gambling advertising reforms"]]></title><description><![CDATA[
<p>The same can be said for anything that's dangerous. In fact, one can make this argument simply for people who elect to study some field that isn't really very financially viable.</p>
]]></description><pubDate>Thu, 09 Apr 2026 17:57:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47707062</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47707062</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47707062</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "The Australian government has announced gambling advertising reforms"]]></title><description><![CDATA[
<p>The thing with “harmful to society” is that in practice it's so arbitrarily decided what is “harmful” and in practice it comes down more to “arbitrary moralist reactions”.</p>
]]></description><pubDate>Fri, 03 Apr 2026 00:51:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47622123</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47622123</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47622123</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "The Australian government has announced gambling advertising reforms"]]></title><description><![CDATA[
<p>Many dangerous things are legal simply because “people enjoy doing them” though.<p>People die during parachuting and climbing mount everest. What's the upside really beyond “People enjoy doing it and it's their own life.”?</p>
]]></description><pubDate>Fri, 03 Apr 2026 00:47:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47622086</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47622086</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47622086</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "A case against currying"]]></title><description><![CDATA[
<p>> <i>Every function takes one argument - a list.</i><p>That's one way to look at it, but the major difference is that one can also pass a a list as one argument, as in `(f x y z)` and `(f (list x y z)` are not the same. The thing with tuples is that a tuple of one datum is the very same as that datum itself and the same is true with the currying situation. `(f x) y` and `f x y` are truly one and the same in Haskell and Ocaml, just as `f(x, y)` and `let val a = (x,y) in f x` are one and the same in SML. This is not the case in Rust where `f(x,y)`, a function called with two arguments, and `f((x,y))`, a function called with one argument that is a tuple of two arguments are two different things.<p>There is also a difference in Scheme between returning a single value that is a list containing multiple values, and actually returning multiple values, In Rust however there is no difference between returning two values and returning a pair of two values. So Rust functions actually do properly take multiple arguments but always return a single one which may or may not be a tuple. In SML, Haskell and OCaml all functions technically take only one argument and return one value.</p>
]]></description><pubDate>Wed, 25 Mar 2026 09:31:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47515147</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47515147</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47515147</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "The gold standard of optimization: A look under the hood of RollerCoaster Tycoon"]]></title><description><![CDATA[
<p>That person obviously did not want to be at risk for legal issues from Blizzard by publhsing it though. I personally wouldn't take that risk either.</p>
]]></description><pubDate>Mon, 23 Mar 2026 14:34:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47490137</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47490137</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47490137</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "A case against currying"]]></title><description><![CDATA[
<p>I always felt Monads were an utterly disgusting hack that was otherwise quite practical though. It didn't feel like mathematical beauty at all to me but like a hack to fool to the optimizer to not sequence out of events.</p>
]]></description><pubDate>Sun, 22 Mar 2026 20:15:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47481672</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47481672</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47481672</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "A case against currying"]]></title><description><![CDATA[
<p>> <i>Simplicity: Every function takes exactly one input and produces exactly one output. No exceptions. If you didn’t care about the input or output, you used Unit, and we made special syntax for that.</i><p>Seems like a disaster to use s-expressions for a language like that. I love s-expressions but they only make sense for variadic languages. The entire point of them is to quickly delimit how many arguments are passed.<p>In say Haskell `f x y z` is the same thing as `(((f x) y) z)`. That is definitely not the case with s-expressions; braces don't delimit; they denote function application. It's like saying that `f(x,y,z)` being the same as `f(x)(y)(z)` which it really isn't. The point of s-expressions is that you often find yourself calling functions with many arguments that are themselves a result of a function application, at that point `foo(a)(g(a,b), h(x,y))` just becomes easier to parse as ((foo a) (g a b) (h x y))`.</p>
]]></description><pubDate>Sun, 22 Mar 2026 20:12:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=47481637</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47481637</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47481637</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "A case against currying"]]></title><description><![CDATA[
<p>In SML I believe. I never used SML but from how I understand it in ML all functions technically take one argument, which may be a tuple. In Haskell and Ocaml, all functions technically take one argument and just return a function that takes one argument again.<p>I never understood why the latter was so popular. Just for automatic implitic partial application which honestly should just have explicit syntax. In Scheme one simply uses the `(cut f x y)` operator which does a partial application and returns a function that consumes the remaining arguments which is far more explicit. But since Scheme is dynamically typed implicit partial application would be a disaster but it's not like in OCaml and Haskell the error messages at times can't be confusing.<p>I don't get simulating it with tuples either to be honest. Nothing wrong with just letting functions take multiple arguments and that's it. In Rust they oddly take multiple arguments as expect, but they can return tuples to simulate returning multiple arguments whereas in Scheme they just return multiple arguments. There's a difference between returning one argument which is a tuple of multiple arguments, and actually returning multiple arguments.<p>I think automatic implicit partial application, like almost anything “implicit” is bad. But in Haskell or Ocaml or even Rust it has to be a syntactic macro, it can't just be a normal function because no easy variadic functions which to be fair is incredibly difficult without dynamic typing and in practice just passing some kind of sequence is what you really want.</p>
]]></description><pubDate>Sun, 22 Mar 2026 20:07:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47481573</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47481573</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47481573</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "PC Gamer recommends RSS readers in a 37mb article that just keeps downloading"]]></title><description><![CDATA[
<p>Well, it's otherwise “free” to read the article so I guess this is how one “pays” in the end.<p>I wonder how this works on mobile data though which is significantlym more expensive than home network data.</p>
]]></description><pubDate>Sun, 22 Mar 2026 20:00:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47481488</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47481488</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47481488</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "No Semicolons Needed"]]></title><description><![CDATA[
<p>The issue is that it's a special case that acknowledges where there are cases where the indentation level it logically requires isn't what programmers find pleasant, there are many more, that just don't have that special case, so it forces indentation that's unpleasant and unintuitive.</p>
]]></description><pubDate>Sun, 22 Mar 2026 13:29:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47477343</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47477343</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47477343</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "No Semicolons Needed"]]></title><description><![CDATA[
<p>That's just because most languages go by braces and have optional intendation that is just ignored by the compiler.<p>I'd reckon that in a language where stuff is done by indentation but optional braces exist that are just ignored so many errors would also have been caused by braces being misplaced by the programmer to queue other programmers who thought some scope happened as a consequence but the compiler disagreed due to the indentation, which by the way was caused by tabs and spaces being mixed in the code and it not properly showing up for another programmer with tab with set differently.</p>
]]></description><pubDate>Sat, 21 Mar 2026 23:55:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47472840</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47472840</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47472840</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "No Semicolons Needed"]]></title><description><![CDATA[
<p>Functional hardly matters Haskell has plenty of indentation which is by the way interchangeable with `{ ... }`, one can use both at one's own pleasure and it's needed for many things.<p>Also, famously `do { x ; y ; z }` is just syntactic sugar for `x >> y >> z` in Haskell where `>>` is a normal pure operator.</p>
]]></description><pubDate>Sat, 21 Mar 2026 23:52:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47472818</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47472818</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47472818</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "No Semicolons Needed"]]></title><description><![CDATA[
<p>I like how Haskell does it. One can do both but not mix, as in either indent or use `{ ... }`.</p>
]]></description><pubDate>Sat, 21 Mar 2026 23:46:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47472778</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47472778</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47472778</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "No Semicolons Needed"]]></title><description><![CDATA[
<p>The issue is that you find you very often want to break those roles. Python basically has `elif` because `else if` would make each branch nest one level deeper which isn't what one wants, except Python uses exceptions for flow control so you find yourself having to use `except ... try` as an analogue to `else if` but not `excetry` exists to do the same and stop the indentation.<p>There are many other examples. It exists to give people freedom. Also, while humans only go by intendation it's very hand for text editing and manipulation without requiring special per-language support to move the cursor say to the nearest closing brace and so forth.</p>
]]></description><pubDate>Sat, 21 Mar 2026 23:44:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47472769</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47472769</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47472769</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "Wayland set the Linux Desktop back by 10 years?"]]></title><description><![CDATA[
<p>> <i>Indeed. And what many seem to fail to notice is that at it's core it's exactly the same mistake being made all over again. A mistake that I've seen so many times over and over again, increasingly commonly in recent years, which can be summed up thusly:</i><p>Yes, just as the idea of “We will start anew because the codebase is a mess and this time we'll make it clean.”. 10 years ago, whenever I saw something like that I would've said that person has zero actual experience working as a programmer. I've seen teams go through this multiple times but at the end, the new codebase when all the features are added is just as much of a mess as the old, at best a slight improvement. People who say this just underestimate the scope. But these people have experience. They're just optimistic and full of wishful thinking maybe?<p>> <i>See, I don't think you're giving them enough credit. Or is it too much credit? These are not stupid people. I say they do understand this, they just don't care about your time enough to do anything about it.</i><p>I disagree. I've talked with many of those people both online and in real life who don't understand that for most people time has value. They really just don't get it. They're not stupid; they just don't really think about it that way and don't have much to do in their lives aside from this one specific hobby.</p>
]]></description><pubDate>Sat, 21 Mar 2026 15:49:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47468110</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47468110</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47468110</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "Wayland set the Linux Desktop back by 10 years?"]]></title><description><![CDATA[
<p>Yes, that, or the “Use case for <extremely useful and obvious thing>?” memes. Ebassi once got father angry at me after finding out that I did not run Polkit or a system dbus on my system and alledged that I must not know what they do because everyone would want that.</p>
]]></description><pubDate>Sat, 21 Mar 2026 12:34:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47466447</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47466447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47466447</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "Wayland set the Linux Desktop back by 10 years?"]]></title><description><![CDATA[
<p>Well that's the issue with free software isn't it. In properitary software people work on what their boss tells them to work on which is decided by market research based on what people want.<p>Others said in this thread that Wayland in many ways was more so trying to solve issues for developers than for users and that's true.</p>
]]></description><pubDate>Fri, 20 Mar 2026 11:58:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=47453355</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47453355</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47453355</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "Wayland set the Linux Desktop back by 10 years?"]]></title><description><![CDATA[
<p>> <i>That said, we all enjoy the fruits of their labors ...</i><p>Well, we also enjoy the issues. When you talk to them they are extremely uncompromising in practice and extremely tribalistic. I think “tribalistic” is maybe a better word for what I feel is an issue. “Not invented here syndrome” reigns supreme in open source and in general it's full of extreme fanboys who aren't willing to admit anything is wrong with “their tribe” and aren't willing to acknowledge any issue whatsoever and defend everything to the death.<p>The opposite is also just as true though. Many of the users and figureheads will believe everything is wrong with “other tribes” and refuse to acknowledge any of the merits and good ideas.<p>Proprietary developers have no allegiance but to money and there's something to be said for that. They just work for a company because it pays them and will switch to another company when they get a better contract there and in many ways that makes far less loyal and thus level headed about many things when talking to them.</p>
]]></description><pubDate>Fri, 20 Mar 2026 11:38:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47453211</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47453211</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47453211</guid></item><item><title><![CDATA[New comment by Blikkentrekker in "Wayland set the Linux Desktop back by 10 years?"]]></title><description><![CDATA[
<p>“<i>I guess you have to decide if you are a GNOME app, an Ubuntu app, or an XFCE app unfortunately. I'm sorry that this is the case but it wasn't GNOME's fault that Ubuntu has started this fork. And I have no idea what XFCE is or does sorry.</i>”<p>Prophetic words were once spoken and mocked long ere.</p>
]]></description><pubDate>Fri, 20 Mar 2026 04:17:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47450437</link><dc:creator>Blikkentrekker</dc:creator><comments>https://news.ycombinator.com/item?id=47450437</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47450437</guid></item></channel></rss>