<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: klibertp</title><link>https://news.ycombinator.com/user?id=klibertp</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 15 Jun 2026 05:05:37 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=klibertp" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by klibertp in "GLM 5.2 Is Out"]]></title><description><![CDATA[
<p>The fact that politics controls businesses there might lead to, but doesn't necessarily ensure, a "brighter future". It's pretty common knowledge that authoritarian regimes can, especially in extreme, disastrous situations on a large enough scale, function better than less centralized and more open organizations. The problem is that there's less resistance to directing that effectiveness toward something that will make at least some people's futures much darker.<p>Then again, just because business controls politics doesn't mean there's much more decentralization or openness, either. In the end, the main advantage of this model was predictability - sure, we have an "inner circle" that forces its policies in both cases, but the businesses are at least predictable in their decision making, always chasing profit, based on hard numbers, unlike the other side chasing whatever flavor of ideology they believe in (or want to sell) this month... Wait. I just recalled "colonies on Mars" and "metaverse," and the cognitive dissonance made me blank out for a sec here.<p>In any case: while the Chinese model seems to have some upsides, especially compared to the current situation in a few other places on the globe, I don't believe it has a significantly higher chance of helping us achieve a "brighter future". I may be depressed, but in virtually every scenario from this point, I can only see a bleak future ahead of us. Getting to AGI under current conditions makes for completely unpredictable societal and political chaos, yet not getting there (and fast) risks the bubble bursting (causing, of course, unpredictable economic and, by extension, societal and political chaos). The longer the current situation persists, the lower the probability of finding an off-ramp that won't upend everybody's and their dog's lives. Yet, there is no incentive to back off from the race either.<p>I really wonder what's next - what kind of poop will finally hit the fan, and when exactly?</p>
]]></description><pubDate>Sun, 14 Jun 2026 22:28:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=48533561</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48533561</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48533561</guid></item><item><title><![CDATA[New comment by klibertp in "Firewood Splitting Simulator"]]></title><description><![CDATA[
<p>Well, it's the kind of "meditative" you get when training martial arts forms. It gets good after a few years of preparation; before that, it's not as fun as spars and way less useful than general conditioning.<p>Coming from a kendo background, when I had to chop firewood for a few years while living in the countryside, I generally focused on accuracy. The swing is completely different than with a sword, and getting the chop to land at the exact spot (I drew lines with a marker) tens of times in a row was very satisfying, but required a lot of conscious effort to get there. It's not trivial to land a chop at the exact spot you want, and it's also quite hard to ensure the axe travels at its fastest exactly at the moment of impact.<p>It can be fun, but you need to be into things like that in the first place; plus, <i>having</i> to do it no matter the weather and all the other things you need to do can kill all the joy instantly.</p>
]]></description><pubDate>Sun, 14 Jun 2026 14:28:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48527522</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48527522</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48527522</guid></item><item><title><![CDATA[New comment by klibertp in "OCaml Onboarding: Introduction to the Dune build system"]]></title><description><![CDATA[
<p>> Because it's really limited and not expressive?<p>It's neither of those unless you limit yourself to a lowest-common-denominator feature set. GNU Make, for example, is a Turing-complete, dynamic programming language and a CLI task runner. You can build a build system in GNU Make (<a href="https://github.com/omercsp/simple-build-system" rel="nofollow">https://github.com/omercsp/simple-build-system</a>) just like you can do so in any other language.<p>Make suffers from unfamiliar and somewhat unorthodox syntax, and inconsistent language design. So it's not a <i>good</i> language, and saying it "sucks" is not completely unjustified, but not because it's limited. Looking at SBS, it also seems quite expressive, although I can't say I ever tried building something in it myself.</p>
]]></description><pubDate>Mon, 08 Jun 2026 19:08:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48450025</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48450025</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48450025</guid></item><item><title><![CDATA[New comment by klibertp in "Building from zero after addiction, prison, and a felony"]]></title><description><![CDATA[
<p>I'm sorry for your relative, and <i>of course</i> you should always do things like driving (diving, cycling, sailing, climbing - or even cooking and cleaning) as if a tiny mistake could cost you everything: that's because it's actually true. These activities will never be risk-free; the best you can do is bring the risk down to a level comparable to that of alternatives (with "just don't do it" included in the set) and hope no unfortunate incidents occur to you.<p>It's still worth noting the relative probability: death or life-changing injury is basically what happens in <i>every single accident</i> when you're going 200km/h on a highway surrounded by (what could as well be) steel walls moving at the same speed; in my use case, when not exceeding 40-50 km/h and using roads where other users basically stand still most of the time, you need a pretty specific conditions and a lot of bad luck to even have an accident, much less die or become permanently disabled as a result of one. Still, not a zero probability, but the difference between 100% and 0.01% is kind of noticeable.</p>
]]></description><pubDate>Mon, 08 Jun 2026 17:55:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48448696</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48448696</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48448696</guid></item><item><title><![CDATA[New comment by klibertp in "LLMs are eroding my software engineering career and I don't know what to do"]]></title><description><![CDATA[
<p>> Maybe I don't remember how to stitch something together, but i know it can be done.<p>That's how I use the current AI, too. I never ask them to do something without specifying how it should be done. I ask questions first, use /plan to let the model ask me questions, then I let it execute the plan while reviewing the results. More and more often, I get something close enough to what I would have written. In the opposite case, I at least know exactly how to rewrite the result, if needed.<p>I observe the same effect as you: while it does sometimes speed up the implementation a bit, it's not very noticeable; however, it frees me from having to recall all the obscure little details up front. Instead, I can describe them, have the model implement them, and then recognize them (and refresh my memory) when reviewing. The effect is that it's easier to start a task because I don't need to prepare as much to execute it. It's especially notable on things that I haven't touched for some time. I know, more or less, how my Elixir projects are set up, but after ~2 years of not working on them, getting back into them had been a hassle - with AI, it's no longer that. I think the biggest difference comes from the AI lowering the cost of context switching for me - I used to have huge problems with that, and AI certainly helped a lot.</p>
]]></description><pubDate>Sun, 07 Jun 2026 23:55:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48439876</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48439876</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48439876</guid></item><item><title><![CDATA[New comment by klibertp in "Kiki – a tiny homepage construction kit with a small footprint"]]></title><description><![CDATA[
<p>Ok, but given that there are no license terms anywhere (not in the .zip with the code, and I don't think there is one on the web page), you also can't say that this particular license disallows modification. The terms are simply not specified.<p>Further, the very operation of this code requires the user to modify it, as described in the usage instructions. You might say that this only gives permission to modify a particular subset of the provided code, to which I don't have an answer (other than that it's unspecified).<p>You might not be able to fork it and distribute your modified version to others. It's not free/libre. But you can read it and modify it for your own use. To me, that's plenty enough for a project like this. As far as proprietary code goes, this is as harmless as it can get - instead of criticizing it for not being open enough, it would be better to praise it for being this open, to encourage other authors (who would otherwise keep all the code as closed as possible) to follow this model instead.<p>Yes, FLOSS is good and great, but it's impossible to make all code like that; in reality, where we deal with DRM, app stores, and heaps of unrepairable, uninspectable, obfuscated, phone-home activated code all around, even a bit more openness helps.</p>
]]></description><pubDate>Sun, 07 Jun 2026 23:08:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=48439585</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48439585</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48439585</guid></item><item><title><![CDATA[New comment by klibertp in "Building from zero after addiction, prison, and a felony"]]></title><description><![CDATA[
<p>> Some US highways<p>I'm sorry, but from a European perspective, <i>this</i> is the problem, not bikes. If your roads and driving culture encourage driving a tank for safety, that's a bit less than ideal.<p>I commuted to work for 5 years on a moped. I never used a highway, almost never exceeded 50km/h, and had 2 accidents during that time; both resulted in just a few scratches and bruises.<p>In another post, you said: "maybe speed was a factor" - actually, it's the only factor. If you never go too fast and never use roads where others may go too fast, you're safe - at least from life-altering tragedies.<p>If, on the other hand, it's generally impossible to get where you want to without using highways, or the sheer distance forces you to step on it - then yeah, don't buy a motorbike. Just note that it's not the bike's fault!</p>
]]></description><pubDate>Sun, 07 Jun 2026 22:52:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48439448</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48439448</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48439448</guid></item><item><title><![CDATA[New comment by klibertp in "Building from zero after addiction, prison, and a felony"]]></title><description><![CDATA[
<p>Probably depends on the locale. In Europe, riding a moped in a big city is a way to drastically cut your commute compared to driving a car. It's not exactly dangerous when all the other road users are moving at 5m/min, and being able to just skip all the traffic jams is a godsend. By car, my trip to the office was about 45min - it was 15min on a moped, a stop at a shop for some snacks included. And that's with riding speed never exceeding 50km/h.<p>I had two accidents during my 5 years of commuting, and both times I only got minor scratches and had to replace my shoes. Both happened at speeds a determined bicycle rider could achieve, but I suspect I wouldn't be as well protected on a bicycle (both the machine itself and the protective gear tend to be much lighter there than on a moped). If I needed to do that again, I'd buy a model with two wheels at the front, which would have prevented both accidents - though I'm not sure if added stability wouldn't encourage me to ride faster.<p>So it's pretty specific, but if you're somewhere where driving culture is not too cutthroat, the roads can support single-track vehicles, and the traffic rather than actual distance is the limiting factor - owning a bike can be an objectively better option.</p>
]]></description><pubDate>Sun, 07 Jun 2026 22:19:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=48439163</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48439163</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48439163</guid></item><item><title><![CDATA[New comment by klibertp in "Kiki – a tiny homepage construction kit with a small footprint"]]></title><description><![CDATA[
<p>I'm not going to blame you _too_ much, since I had similar suspicion, but you could have (as I did) just downloaded the .zip file and examined the contents. In the shareware version, some things are probably missing (I think not all themes are there), but otherwise it's just a bunch of PHP files, no obfuscation or anything. The markup language is configured in a text file, and the parser for that file is just next to it. The configuration is used for configuring the markup parser, which is also present. And so on. It's not open-source only if your definition of OSS is "has to have a Github page".</p>
]]></description><pubDate>Thu, 04 Jun 2026 21:20:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48404781</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48404781</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48404781</guid></item><item><title><![CDATA[New comment by klibertp in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>> Errors are often simply swallowed.<p>That's a bit of a misrepresentation. Error handling on the BEAM has a few more layers than in other environments; specifically, the supervision tree can be used to "let things fail". That's not the layer where you should log or handle failures - that's a safety net that ensures your whole system won't go down if your error handling in a single process doesn't work.<p>For error handling, there are roughly these layers:<p><pre><code>    - functions can return {:ok, value} or {:error, error}
    - functions can raise errors (similar to exceptions) that can be caught
    - processes can be monitored from the outside, you get notified when they die
    - processes can be linked and exits can be trapped, also notifying you on failure
    - supervisors can handle process deaths in a configurable manner
    - higher-level behaviours often expose their own error handling callbacks
</code></pre>
So there's a bit more to error handling on the BEAM, and I get that becoming familiar with all of them and using them properly can be a challenge. The defaults skew towards high-availability, which is not always what you want in development - sometimes, failing fast and completely (up to stopping the app or the BEAM as a whole) is more convenient. You can have that; you just need to ask for it specifically in your code.</p>
]]></description><pubDate>Thu, 04 Jun 2026 12:13:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=48397548</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48397548</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48397548</guid></item><item><title><![CDATA[New comment by klibertp in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>> Elixir is having to handle (possibly) hundreds of thousands of processes<p>OMG, why? Why would you <i>ever</i> have so many processes? All of them at the same time? Are you going to animate a 3D scene and run a process for each vertex, or something?<p>No, I mean, if you're WhatsApp - across all nodes - then somehow maybe yes? At scale. But in normal code, slicing workloads too thinly is counterproductive, and having even tens of thousands of processes is a sign that you're slicing it <i>way</i> too thin. Message passing between processes is cheap, but not free. Schedulers do a good job, but rarely have more than 16 cores to work with. And so on.<p>You <i>can</i> have that many processes if you want, to be sure. But if you're struggling with it, why <i>would</i> you want it?<p>Reading your comments in this thread, I have a feeling you just didn't spend enough time reflecting on how you want to use Elixir. In effect, you also failed to consider how exactly you should learn it. For example: Elixir is a perfectly capable procedural language. Start by writing CLI tools, without spawning any processes at all. Then try to parallelize their processing. If the tool accepts a list of files as arguments, use a `Task` to compute return values for each file. Tasks are processes, but with a particular contract that simplifies their usage. Later, you can experiment with error handling and supervision by putting the tasks under a supervisor. And so on. You go from the familiar to the less familiar, with a useful, working tool every step of the way.</p>
]]></description><pubDate>Wed, 03 Jun 2026 23:12:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=48391371</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48391371</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48391371</guid></item><item><title><![CDATA[New comment by klibertp in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>> It's so confusing to build for the BEAM that I ultimately gave up on it.<p>Every new paradigm is confusing if you don't put in the work to learn it. That's just how the mind works.<p>What's important is what you get after you don't give up on it long enough. And that, on BEAM, is a hilariously OP superpower of effortlessly[1] parallelizing and distributing workflows. Then there are Elixir macros and the OTP supervision model. The addition of gradual typing is huge, and when the annotation syntax lands, I will definitely switch to Elixir for everything on the backend.<p>In any case, the only thing I can tell you is that learning Elixir is worth enduring the confusion. From personal experience, it's just a matter of learning it bit by bit over time - there's a finite set of "confusing" ideas in the OTP/Elixir/BEAM mix, and learning about some of them every other day works wonders over a few months.<p>[1] An exaggeration - I know! But it does make it much easier to implement parallel and distributed workflows. Recently, most of the important languages finally started getting their m-n concurrency models (from Java to Python), so the BEAM is not as much ahead on SMP, but for distribution (you can send closures to execute on different machines transparently!) it is still in a league of its own.</p>
]]></description><pubDate>Wed, 03 Jun 2026 22:43:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=48391131</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48391131</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48391131</guid></item><item><title><![CDATA[New comment by klibertp in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>Smalltalk has no problem at all with accepting that some things are naturally functions: it has always had blocks! The call operator is `value`, not `()`, but it's the same "apply a piece of code to some values" operation.</p>
]]></description><pubDate>Wed, 03 Jun 2026 21:14:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=48390178</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48390178</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48390178</guid></item><item><title><![CDATA[New comment by klibertp in "OpenRidingController – DIY horse riding controller for the PC"]]></title><description><![CDATA[
<p>Glorious! Next step - find a game where you ride on a flying creature and add the necessary controls. Apparently, you can tame flying creatures in No Man's Sky, for example. You'd probably need to balance with the body? Read through pressure sensors. Might be incredibly cool if well implemented!</p>
]]></description><pubDate>Wed, 03 Jun 2026 12:28:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48383087</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48383087</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48383087</guid></item><item><title><![CDATA[New comment by klibertp in "Gmail thinks I'm stupid, so I left"]]></title><description><![CDATA[
<p>The amount of configuration required to rival what's available out of the box in Web clients (especially indexing, searching, filtering, blocking, etc.) is a bit too much for someone who isn't already interested in it. I tried GNUS in Emacs and a few TUI apps; I do like having all my emails accessible locally, but for day-to-day use, web clients are more convenient. I haven't tried Thunderbird or Outlook (if it still has a local version), though, so maybe I'd have all the conveniences I want there - but since I <i>already have them</i> in Fastmail, I just don't have an incentive to switch.</p>
]]></description><pubDate>Wed, 03 Jun 2026 11:42:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48382694</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48382694</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48382694</guid></item><item><title><![CDATA[New comment by klibertp in "Larry Ellison: "Citizens will be on their best behavior because we’re recording""]]></title><description><![CDATA[
<p>It does. It's still a good text. It's also definitely a result of human-AI collaboration (to what extent - hard to say; could be AI edits in human-written text, could be a longer prompt and AI expanding it, something like that).<p>The it's-not-X-it's-Y formula is the most visible tell. It's overused, being used, I think, 3 times, with 2 being slightly less obvious. This-was-X-and-now-it's-Y is also overrepresented.<p>It's still not a bad comment. We can discuss it just fine. What we can't do now is assume this is entirely an EastLondonCoder's text, so we can't use it to form an opinion of that person (whether good or bad) based on its content (since we don't know how much of it comes from that person, and how much from the machine). Some will also form an opinion (good or bad) about the poster simply because they used AI.<p>That's an Internet discourse of 2026, in my experience. I wonder what's next.</p>
]]></description><pubDate>Tue, 02 Jun 2026 20:07:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48375528</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48375528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48375528</guid></item><item><title><![CDATA[New comment by klibertp in "Trump signs downsized AI order after weeks of reversals"]]></title><description><![CDATA[
<p>> I don't think the allowed shapes of formed metal should be regulated either.<p>I hear you. I collect knives as a hobby, and always have some kind of a cutting tool on me - they solve a surprising amount of little day-to-day problems (unpacking things bought in a shop being a prime example). I lost one of my folders to the UK border guard because, while a 6.5 cm blade was OK, they said its locking mechanism is illegal in the country. What's particularly funny is that I was actually trying to get back to France then - when entering, nobody asked about any knives. I never got that one back. :(<p>I wish I knew what the people who wrote this law thought. A folder without a locking mechanism is just as dangerous to others in violent scenarios, but <i>way</i> more dangerous for the user in typical EDC tasks. In Poland, there is no limit on the length of the blade nor on the locking mechanism. Technically, carrying an automatic foldable scythe or a zweihander is legal; you can't, however, carry a sword-cane or any other blade that is disguised as another item, like an umbrella. To put that all in perspective: in both countries, just like almost everywhere else in the developed world, the most lethal type of knife is the good old kitchen knife - ubiquitous, solid, with a tip ideal for thrusts, with a handle that protects the user's hand during the thrust, and so on. Such knives are generally not within the scope of knife-related laws.<p>So yeah, I don't get the logic behind the knife regulations at all. I'm not sure if completely dropping all of them is the way to go, but they would definitely benefit from a rational reevaluation. As an example, making the locking mechanism mandatory, instead of banned, would have no impact on knife-related deaths while allowing quite a few people each year to actually still have all their fingers.<p>I'm afraid a similar thing will happen with LLMs and later AIs. Regulators will "compromise" and focus on some kind of danger that's not entirely impossible, but also not very probable (assassins with blades in umbrellas...?), will fight for months over semantics, then pass the regulations to absolutely no visible effect - and the really dangerous uses will become either normalized or at least will move to the gray zone. The judiciary will try its best to apply existing laws to new situations, and in some cases, that will inevitably fail. We'll all deal with the consequences of these failures, unfortunately.</p>
]]></description><pubDate>Tue, 02 Jun 2026 19:41:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48375197</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48375197</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48375197</guid></item><item><title><![CDATA[New comment by klibertp in "The worst job interview I ever had"]]></title><description><![CDATA[
<p>No. Reread the post. This interview was specifically explained as a non-technical, cultural-fit talk, and the interviewer "gave an impression of this being a safe space". That means they said something specific to hint that this is the case.<p>Don't blame the poor guy who was subjected to this. You're projecting your understanding of what is normal for the interviewer and assuming that the particular interviewer didn't cross any of the lines you wouldn't. Unless you <i>are</i> the interviewer or know their side of the story, there is literally <i>nothing</i> in the post that would suggest your reading is correct.<p>A simpler explanation: the interviewer was an amateur psychologist with little experience in either interviewing or therapy. They asked "interesting questions," then were overwhelmed by answers they hadn't expected and couldn't gracefully handle. That's it. Please, unless you know more about that particular instance, don't reflexively blame the candidate for what looks like a series of errors on the interviewer's part.</p>
]]></description><pubDate>Wed, 27 May 2026 13:34:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=48294138</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48294138</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48294138</guid></item><item><title><![CDATA[New comment by klibertp in "7 lines of code, 3 minutes: Implement a programming language (2010)"]]></title><description><![CDATA[
<p>"Essential" here means something that cannot, in any way, be further removed from consideration. In this view, things that simplify the understanding and make the program more practical are not essential - they are add-ons on top of the most primitive computational model(s). You can drastically simplify the reading of the lambda calculus by giving it direct support for integers, for example - however, you now polluted the model with an additional element that you need to describe and always keep in mind. Using Church encoding lets you get integers without introducing any new elements to the model, keeping the model simpler - but yes, the implementations of programs within that model will get much more complex to read.</p>
]]></description><pubDate>Mon, 11 May 2026 14:24:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48095410</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48095410</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48095410</guid></item><item><title><![CDATA[New comment by klibertp in "7 lines of code, 3 minutes: Implement a programming language (2010)"]]></title><description><![CDATA[
<p>You should be familiar with the terms "essential" and "accidental complexity", right?<p>Lambda calculus, primitive recursion, Brainf*ck (Turing machine) are all models that discard <i>all</i> of the accidental complexity - all of it: syntax, higher-level constructs, abstractions, etc. What's left is the bare computation itself, amenable to analysis.<p>It's not meant to be practical - it's a research vehicle that shows what's possible and what's not possible in the realm of ideas, without looking at any real-world constraints (you would, in practice, want to see the result of your computation in less than 100 years - that's not the consideration when using one of the models).<p>So yeah, it's not something you use, it's something you learn to arm your brain with tools that will help you debug and write complex code that works. It's really worth spending a year or two deep-diving into these "pure theory CS" things; considering that you're going to be writing code for 20+ years (AI allowing), spending 10% of that time learning the foundations on which everything else rests is not that big of a task.</p>
]]></description><pubDate>Mon, 11 May 2026 13:29:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48094748</link><dc:creator>klibertp</dc:creator><comments>https://news.ycombinator.com/item?id=48094748</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48094748</guid></item></channel></rss>