HNHacker News
TopNewBestAskShowJobs

legobmw99

609 karma · joined January 10, 2021

submissionscomments
legobmw99··on RAM is so expensive, Samsung won't even sell it to Samsung
Isn’t that due to different reasons (like the end of production for older standards)? I recall the same happening shortly after manufacturing for DDR3 ceased, before eventually demand essentially went to 0
legobmw99··on RAM is so expensive, Samsung won't even sell it to Samsung
If they’re DDR4 (or even DDR3), it has no value to e.g. OpenAI so it shouldn’t really matter
legobmw99··on Migrating the main Zig repository from GitHub to Codeberg
Similar things on the OCaml forums. He has a post titled “Dune: concurrent builds are here!” but really it’s a +967 -100 slop PR that had to be closed
legobmw99··on Minecraft removing obfuscation in Java Edition
(Neo)Forge primarily use either mojmaps or Parchment, which are the Mojang mappings with some extra goodies like docstrings and parameter names
legobmw99··on Help us raise $200k to free JavaScript from Oracle
We should call it UnTypedScript
legobmw99··on Will Bardenwerper on Baseball's Betrayal of Its Minor League Roots
Besides the logistical problems (shared ownership of MLB and minor league teams, the fact that almost all [good] players in the minors are really ultimately contracted with a major league team, etc), I truly believe that even the worst major league team would absolutely destroy AAA, and the best AAA team would probably set the single season loss record with ease in the bigs
legobmw99··on A simple way to generate random points on a sphere
Does this generalize to higher dimensions? I’m realizing my mathematics education never really addressed alternative coordinate systems outside of 2/3 dimensions
legobmw99··on WebR – R in the Browser
Since you mentioned Stan, feels relevant to mention https://stan-playground.flatironinstitute.org/, which lets you run Stan in WASM and analyze the results using WebR
legobmw99··on OCaml as my primary language
Yes, the opam repository has recently been working on an archival policy to reduce the size of the checkout and hopefully ease pressure on the dependency resolver by pruning 'obviously' wrong choices. However, the heuristic they chose seems to have mainly assumed that the things in the repository are libraries, and used dependencies for tracking usages. For executables like dune, this is obviously the wrong idea, and I think they're still deciding how to proceed while adding back most versions
legobmw99··on OCaml as my primary language
Either a lot of clones or a lot of reference counted pointers. Especially if your point of comparison is a GC language, this is much less of a crime than some people think
legobmw99··on GitHub was having issues
Day one of the new management structure off to a rocky start
legobmw99··on The Big Oops in type systems: This problem extends to FP as well
This is a misinterpretation equivalent to saying "The halting problem indicates it is impossible to say if this loop terminates: while true: break "

It is true that it is impossible in general, but that says nothing about whether or not it is possible in almost every useful case

legobmw99··on The Big Oops in type systems: This problem extends to FP as well
Not sure if you've watched the (entertaining but long) lecture by Casey Muratori linked at the start of this article, but I think this is sort of his point. ECS are powerful not just because of how modern computers schedule and execute code, but they also force you to break the traditional OOP encapsulation ideas, allowing more systems to 'reach across' systems.

He has a interesting discussion about how this 'omniscience' is viewed as a bad thing by many, but it is also incredibly powerful for business logic, especially with heavy user interaction like games.

legobmw99··on Commissioner of labor statistics fired after weaker-than-expected jobs figures
Hard to imagine that isn’t part of the goal at this point
legobmw99··on Anaconda Raises $150M Series C
That can only happen if you as a user have the 'defaults' channel still configured as available, and conda-forge considers it a user error whenever this happens (the official line is `conda-forge is incompatible with the packages provided in defaults`). Many bug reports are closed simply by telling the user to fix their channel priorities and stop mixing the two
legobmw99··on “Good first issues” are usually not good first issues
There’s an additional difficulty here which is the actually good first issues tend to be completed early in their existence, so the long-term steady state is issues that are much more difficult for some reason or another (even if they aren’t stale)
legobmw99··on Celebrating 20 Years of MDN
This feels a bit like Stroustrops comment “There are only two kinds of languages: the ones people complain about and the ones nobody uses”. If MDN was not such an invaluable service, not nearly as many people would end up forming opinions!

As someone who only dabbles in the web platform I’ve always found the MDN pages to be very refreshing compared to a lot of documentation out there

legobmw99··on Programming Language Escape Hatches
I think this is a very interesting way to think about and categorize languages. One of the reasons I've always preferred OCaml to Haskell, for example, is how less-escape-hatch-y mutation is. It's still not the preferred path, but it is certainly way closer to a first party feature and you won't immediately be asked to leave the room for suggesting using it to solve a problem.

You give up some stuff in exchange for this, of course!

legobmw99··on Show HN: Header-only GIF decoder in pure C – no malloc, easy to use
I first encountered the idea relatively recently with Clay [1] and I have been a fan since. Once you get past the “huh, weird” stage it has a lot of benefits!

1: https://github.com/nicbarker/clay

legobmw99··on Show HN: Header-only GIF decoder in pure C – no malloc, easy to use
In particular, you can define the implementation flag and include the header in a .c file with no other contents to recover the more “traditional” build set up where you have a separate TU dedicated to the library.

I quite like the flexibility it provides in terms of making “unity builds” very easy, and scaling down quite well to small, single-TU projects with minimal build set ups.

legobmw99··on The borrowchecker is what I like the least about Rust
I was surprised to have to scroll this far to see someone bring up that the comparison point seems to be Python... I mean, I have absolutely no difficulty believing the statement

> For every time I experience a bug in Python that would have been prevented in Rust by its borrowchecker, I experience maybe twenty borrowchecker issues.

Now, if you replace "Python" with C or C++, my guess is the ratio at _least_ equalizes if not flips entirely

legobmw99··on C# Language Design Meeting for June 30th, 2025
The python PEP process is fairly open, most of the discussion ends up happening on public facing boards. I don’t think they have regularly scheduled meetings to consolidate decisions, though
legobmw99··on A Rust shaped hole
nobody gives OCaml a thought in these discussions. It’s such a wonderful language!
legobmw99··on Introducing tmux-rs
There are reasons to be worried about additional safety beyond just security. My first thought when reading the article was it would be a huge bummer if a bug in tmux brought down a long-running or particularly stateful session. Of course, I’ve never encountered such a thing in my own usage, but if you could make it less likely that alone seems like a value add
legobmw99··on Code-GUI bidirectional editing via LSP
Hot reload in Java is still a crucial part of my workflow for modding Minecraft, but it doesn't have the other direction where an action in the game could alter the code
legobmw99··on Code-GUI bidirectional editing via LSP
The idea of a language server also being some other kind of server is almost fiendishly clever to me and I'm shocked I hadn't seen other people play with this before. Definitely can think of applications to game programming -- a sufficiently dedicated engine team could fork their language's LS and allow you to e.g. integrate the map editor's feedback into the source code. I know hot-reloading is considered super valuable in games, but this is almost the dual of that idea. So clever!
legobmw99··on BusyBeaver(6) Is Quite Large
748 is not tight. As given in the article, k=643 is independent of ZFC, and the author speculates that it's possible that something as small as BB(9) could be as well.

The 748/745/643 numbers are just examples of actual machines people have written, using that many states, that halt iff a proof of "false" is found.

At any rate, given the precise k, I believe your intuition is correct. I've heard this called 'proof by simulation' -- if you know a bound on BB(N), you can run a machine for that many steps and then you know if it will run forever. But this property is exactly the intuition for why it grows so fast, and why we will likely never definitively know anything beyond BB(5). BB(6) seems like it might be equivalent to the Collatz conjecture, for example.

legobmw99··on Zohran Mamdani offered New Yorkers a political revolution – and won
You think this is not already a response to the broader US climate?
legobmw99··on OxCaml - a set of extensions to the OCaml programming language.
The first feature that originated in this fork to be upstreamed is labeled tuples, which will be in OCaml 5.4:

https://github.com/ocaml/ocaml/pull/13498

https://discuss.ocaml.org/t/first-alpha-release-of-ocaml-5-4...

legobmw99··on C++ to Rust Phrasebook
This is fine if the method you’re talking about is static — as you point out, it’s really all Rust has — but is absolutely a design mistake if it is not, which I think is what the poster above is referring to. It’s a common anti pattern and means you have an object that is at-best useless and at-worst completely broken after you call the constructor but before you call some member function on it
← PreviousPage 2 of 7Next →