skysight-inc/HackerNews huggingface dataset:
> Why is it that exiting at the end of main() requires a system call? Wouldn't a `ret` instruction go "back" to somplace where the OS itself will do cleanup work?

The only way for execution to cross the barrier between "user space" and "kernel space" is through a system call or an interrupt (we won't speak of call gates). Even if the OS had put an address on the stack, so that the "ret" would go there after returning from main(), the code there would still need to do a system call to go back to the OS.

While nowadays Linux has a shared page of code mapped on every process (the vDSO), that wasn't the case in the past; all code on the "user space" side had to come from either the executable itself, or a library it loaded. Given that, it's natural that it was left to the executable to call the "exit" system call at the end.
> I like where we're headed with tools like this and Ladybird[0] for hope of a subscriptionless future.

That's a weird statement. I've been running a free, open-source and subscription-less browser (firefox) and terminal emulator (many) for close to 20 years.

Actually I like what ladybird is doing in the browser space, given firefox is quite dependent on google cash. But this is just yet another terminal emulator in a sea of them. The only two distinguishing features I can see are hype and native UI (which mac users care about for some reason -- my native UI is a borderless rectangle in tiling WM).
> I am proposing that Debian should routinely compile Rust packages against dependencies in violation of the declared semver, and ship the results to Debian’s millions of users.

That sounds like a recipe for a lot more security vulnerabilities like https://news.ycombinator.com/item?id=30614766
missing z/OS as well...
I’ve been very disappointed with Alacritty (no support for split term in favor of tmux) and WezTerm (insane config format, config has no business using a full fledged programming language) feature wise, so I have high hopes regarding Ghostty, can’t wait to try it!
this problem also doesn't happen when you build with HEAD and manage it with lockfiles
I am no mining expert, but wasn't ancient copper mining also pretty much "on easy mode" due to more surface deposits of higher concentration near native copper and thus less processing required? The later engineers didn't have the luxury of persistently abundant resources that let them just leave valuable ores as slag.

Meanwhile just digging deeper tends to lead at very least to more incidental runoff pollution spreading heavy metal infused mud. Let alone spread of pollutants from other more advanced practices like chemical processing extracting copper and pollutants from slag and undoing the containment effect.
This feels like something similar would almost be relevant in Java Platform Modules, since modules also have the ability to re-export classes that they've imported. However, there are some small limitations that would make it annoying to adopt this pattern: Having more than one version of the same classname available in different modules requires boilerplate and it's difficult to define over some of the classes of a module that your module imports.
No, cross-platform just means more than one platform. It obviously is that: Mac and Linux.
I believe that's usually so they can track when a library has a security vulnerability and needs to be updated, regardless of whether the upstream package itself has a version that uses the fixed library.
Don’t understand these people who can’t work without ChatGPT. Just look stuff up on stack overflow.
Does it matter unless you're reading a float from varargs? What else can it break?
native UI is so much more than how a border of a window looks like.
I have honestly been so excited to try this after listening to several videos of mitchell talking about his work. What a christmas present!

A terminal is so dear to us software engineers, and this seems like such a love declaration to the terminal.

Time to spend hours tuning my config!
I use pass [1] as a password manager. It uses PGP. I use it with a hardware key.

Is there an alternative that doesn't use PGP? I would be happy to use it, I just haven't found anything.

My issue is that as soon as I have PGP configured for pass, I don't really have a reason for not using PGP for other things (like encrypting files or signing stuff).

[1]: https://www.passwordstore.org/
Comes from video games where you usually can hit ~ (tilde) or other character to make a in-game console appear, usually sliding down from above or at least in the top half/third/quarter of the screen. Popularized by Quake and games from that heritage (like Source engine) I suppose.

Desktop equivalent is that you have a terminal available at a short-cut/button-press that will always show it but not fully hide the rest, no matter what other context you're in. Pretty handy.
> how much do you produce to make the devices, maintain and run them, the boats

Boats consume way more fuel than a layman may think. I’ve been on a ~80m / 20people crew coast guard ship for 6 weeks and did a napkin math onboard based on tank levels and refueling date. It was +1000l/person/day of diesel (can’t remember precise numbers). We were moving ~50% or the time. In addition of the motors there were many BIG generators to make everything work: heating, sewage, hot water, AC, pumps, motors for cranes, anchor raising… you also need your motors running at least in low speed even when still to control your position and direction.

I’m sure boats acting like platforms and with less crew to accommodate does consume less, however it’s still nothing comparable to an onshore plant.

It work "economically" because you often manage to refuel in an port with low fuel price.
> and are becoming more hostile to distro packaging

This to me sounds like the distro packaging model isn’t a good one.
I understand your point better now, thanks for elaborating! I do relate to the experience of stopping using my diagnosis as an excuse for pushing people away. My life is so much better now. Yet, for me, a pair programming session (for instance) is something I prefer doing, like, once a month, or less. But I certainly do enjoy it, a lot!
I have never tried this one.
General knowledge?

Five times in two weeks I've asked OpenAI some basic factual information and it didn't get even close on any of them.
Yeah, this is a common reason that environmentalists oppose nuclear power. First you have to prove that what you're going to do is making an improvement. The key element to remember is that we got everything right until the 1970s. After that, it's best to not touch things.
Right, but what happens if the Assert isn't true? Does the program crash/abort? If so, is there a stack trace or how do you troubleshoot it?
Arca OS, the continuation of OS/2, is still around, and it supports relatively modern hardware. Looks like the last release was 2023.

https://www.arcanoae.com/arcaos/
I'm not an investor but this story is a big pile of red flags to me. You need to get your operational concerns resolved and show you can manage what you've already built as well as sustain a working team before you can reasonably expect people to give you additional capital.
This problem can arise in your dependencies regardless of your use of lockfiles.
>How bad would it suck if every Python app you installed needed to have its own venv for example?

You just described every python3 project in 2024. Pretty much none will be expected to work with system python. But your point still stands, that's not a good thing that there is no python and only pythons. And it's not a good thing that there is no rustc only rustcs, etc, let alone trying to deal with cargo.
Would love to help you learn rust. What’s the best way to reach out?
I've been trying to understand it for a while now, it seems very cool.

Best short answer I have is that it's a lot of things working together. At it's core there's an IPC interface that's geared towards real time audio/video and an event loop that's scriptable in Lua that can read frames, process them, and then draw it to the screen.

This lets you do cool things like having parts of the frame drawn by another process, or on another computer seamlessly. And its more secure to punt things like codec processing on another thread anyways since those are common targets for exploits. Plus, the scripting ability makes it very easy to intercept streams and modify them as you please.

There's more to it, I recommend the blog, it has a fun sort of zen riddle tone that I personally like a lot. This article is my favorite: https://arcan-fe.com/2021/09/20/arcan-as-operating-system-de...
Not much of a monopoly when they are being outcompeted by open source models done by companies with a fraction of OpenAIs resources.

Sure - a government sanctioned monopoly might have been their fantasy but now it is getting obvious it is not the way things are going to go …
Also, some of the most populous time zones in the world, such as the European and Chinese time zones, are multiple hours across.
What a dumb take on the topic.

There's hard sci-fi, for starters. Even outside that realm, nothing wrong with using them as cautionary tales. Asimov's tales excel at this, even if they're not "physically accurate"; who tf cares about that, honestly.

No one in their right mind would treat this literature as if they were textbooks.
>To the extent that it constitutes copyrightable work, the idea of depending on a future version of the same library is licensed under the CC0 1.0 Universal license (LICENSE-CC0) and may be used without attribution.

An idea isn't copyrightable work; only the text explaining it is. Please don't propagate the idea that ideas are copyrightable.
You’re getting downvoted but you’re not wrong. The Linux Distro model of a single global shared library is a bad and wrong design in 2024. In fact it’s so bad and wrong that everyone is forced to use tools like Docker to work around the broken design.
The greatest trick AGI ever pulled was convincing the world it didn't exist.
I agree. While some people are uncomfortable in social settings and/or talking alot, especially "small talk", other people are uncomfortable sitting in silence. BOTH types of people need to work on be more comfortable being uncomfortable. However, it's seen as rude to tell overs to just "be quiet for a bit and enjoy the silence" vs "you're socially awkward because you refuse to talk to me"...

My father in law seems unable to sit queitly in group settings. He performs too much small talk in my opinion. And it seems merely to fill the silence since they are often the same questions day in and day out. Either his memory is very bad, or he's not actually listening, just wanting to make noise. I've given up wasting my breath (re)answering the same questions. It seems he doesn't truly care about what others think, say, or feel... otherwise he might work on committing answers to memory. And even when folks start talking, he interrupts a lot... I truly hope it's not poor memory.
Finland Boards Tanker After Power and Data Cables Go Offline
Actual Web Rendering in Terminal
I'll be honest, why even fucking with any other kind of geo-engineering other than high altitude sulfur dioxide injection. We literally have seen a big jump in warming from problably removing the sulfuric byproducts of cargoship fuel. At its heart global warming is an issue of energy in vs energy out. Its a lot harder to remove billions of tons of co2 to increase energy out versus using a couple thousand tons of sulphur dioxide to reduce energy in. Maybe not as a permanent fix, but a better fix than this nonesense.
It’s going to be multiple centuries until the cumulative leap seconds add up to 30 minutes, and by that point, a majority of the human population is likely to be living off the earth anyway.
"distinctive shambolic aesthetic", what a great phrase. I use the friend of every hack fraud - "extreme stylization" to cover a multitude of sins.

Somebody actually nominated my interactive fiction game for a best graphics ribbon, which amused me no end.

I have often thought that we spend too much time studying and trying to emulate the great artists, musicians, and writers. It is more productive to see what the mediocre talents are doing, how their works succeed, and try to copy their techniques. Even if you fail you will find your own voice and produce something distinctive.
Extroverts also need to work on sitting in silence, IMO...

https://news.ycombinator.com/item?id=42517790
Would love to help you learn Git. What’s the best way to reach out?
Speedrunner Accused of Cheating Live on Stream with Audio Analysis [video]
Meh. I don't get the love Lua gets on HN.
At least version 5.1, I didn't try the others.

No first class support for OOP, you got to use tables instead.

No "continue" keyword to go to the next iteration of a loop. So you have to use some ugly elseif.

No try catch!

It's a dynamic language so everything goes. A function will return nil or a number or whatever you wish.
A function can also returns any number of variables, so obviously some moron will abuse it: looking at you Blizzard intern (you must have been an intern right?) that thought returning 20 variables on the combat event log was a good idea. Ever heard of tables???

The LSP can't do miracles when there are almost no rules so auto-completion is more miss than hit, which is quite shocking in 2024.
The IA is helpful sometimes but create subtle bugs some other times. A simple uncaught typo will create a hard to find bug (yesterday copilot auto-completed myObject.Id instead of myObject.id, there went 20 minutes of my life trying to find why some code that was running solidly for weeks was now failing silently).

So all in all, Lua is fine to write small imperative scripts of a few hundred loc.
Anything bigger and more complex you should run away IMHO.

I never realized C# was such a well designed language until I tried Lua.
Users ought to report bugs to their distro first, and the distro package maintainer should then decide whether it's an upstream bug or a distro packaging bug. That would cut out all the noise that upstream hates.

The problem is users have gotten savvy about talking to upstream directly. It helps that upstream is usually on easy-to-use and search-engine-indexed platforms like GitHub these days vs mailing lists. It would still be fine if the user did the diligence of checking whether the problem exists in upstream or just the distro package, but they often don't do that either.
This is by far the best terminal emulator I've ever used.
Leaked Documents Show OpenAI Has a Clear Definition of 'AGI'
The original video title makes the video sound like pointless internet drama but the audio engineering aspect of it is very interesting and informative. With a bonus hilarious plot twist at the end.
Inverse Design of Complex Nanoparticle Heterostructures via DL on Graphs
Return rates of brick and mortar are about 8-10%. Where as online and approximate 30%.

In addition to this the trash contributed to selling drop shipped Temu garbage.
If you're using ChatGPT actively, then surely you have heard of Gemini and Grok (no clue of how far Grok gets you nowadays, but Gemini should. Not sure how good the voice interface is).
Pretty cool. I asked it for a blade of infinite length and while it obviously wasn't infinite, it was indeed long as hell.
I would say not really as software defined peripherals have been around for some time. There is the Parallax Propeller and Greenarrays chips which have no hard IO blocks, everything is done in CPU cores. The Ti PRU is similar.
Improving feature interactions at Pinterest under industry constraints
Usually, yes. Monorepo means all dependencies are checked into the same repo. Even external dependencies (when source available) are checked in.
Yes it's a thing - a worse than useless thing.

A wafer thin wrapper around an array of bytes using null termination - a model of "strings" which is effectively a computer technology fossil - nearly 60 years old at this stage.[1]

It contains no specified or implied encoding - so there is way to actually interpret the data as characters which I guess wasn't a problem in the age before computer networking - your machine has an encoding built in and that was how you interpreted bytes as characters.

A representation that, to save a byte or two at the header, means that determining the length of the string is an O(n) operation.

It's an abstraction so leaky, it's hard to see the advantage over const char* and the leaks can never be plugged given it's part of the spec that c_str() must run in constant time.

It's basically a dangling pointer generator with no unicode or any sort of internationalization support.

But why provide a usable string class (never mind any sort of usable date/timestampe representations) when the language designers can spend years to add a whole new layer of absolutely useless complexity to the language - like concepts, for example.

Nah - life is too short.

[1] https://en.wikipedia.org/wiki/B_(programming_language)
This was a recent presentation from SIGGRAPH 2024 that covered using neural nets to store baked (not dynamic!) lighting https://advances.realtimerendering.com/s2024/#neural_light_g....

Even with the fact that it's static lighting, you can already see a ton of the challenges that they faced. In the end they did get a fairly usable solution that improved on their existing baking tools, but it took what seems like months of experimenting without clear linear progress. They could have just as easily stalled out and been stuck with models that didn't work.

And that was just for static lighting, not every realtime dynamic lighting. ML is going to need a lot of advancements before it can predict lighting whole-sale, faster and easier than tracing rays.

On the other hand ML is really really good at replacing all the mediocre handwritten heuristics 3d rendering has. For lighting, denoising low-signal (0.5-1 rays per pixel) lighting is a big area of research[0] since handwritten heuristics tend to struggle with such little amount of data available, along with lighting caches[1] which have to adapt to a wide variety of situations that again make handwritten heuristics struggle.

[0]: https://gpuopen.com/learn/neural_supersampling_and_denoising..., and the references it lists

[1]:https://research.nvidia.com/publication/2021-06_real-time-ne...
Love the drawings. Kind of a silly question, but how did you do them?
An eyewitness report describing someone like him, not him, was the only evidence placing him at the scene. That should never be enough evidence to charge. That isn't due process, that is finding someone to fit the crime whether they may have done it or not. There is far too much needing to prosecute, than only prosecuting when certain.
I just ride the bus to the mall. I also walk to the grocery store.
I don't know exactly what, but I know there is more than just that, because calling printf breaks with a misaligned stack even when you're not passing it any floating-point arguments. And even if it doesn't break anything for you today, you're basically committing UB by violating the compiler's assumptions.
Thanks so much for the thoughtful comment. I hope others find it as hopeful and motivating as I did.
The Lua C API is fantastic from a design perspective, but as you have discovered, it is rather error prone. Fortunately, there are many wrapper libraries that take care of all the stack manipulation. For example, I'm using https://github.com/ThePhD/sol2 to interface with C++ and the API is incredibly ergonomic.
The original article: https://muse.jhu.edu/article/936213
I'm all for low-latency reviews, but this target seems crazy: a perfect recipe for a lot of apparent activity for little actual progress. Maybe it depends on the project, but for a lot of projects 15 minutes of review time means you basically are only going to accept trivial changes.
https://github.com/ghostty-org/ghostty#roadmap-and-status
Windows support is planned.
> Food is likely to be delivered from somewhere local AFAIK so its not going to simplify the logistics.

Delivered restaraunt food in urban enough areas sometimes from ghost kitchens, large commercial prep kitchens but making the full meal, instead of the restaraunt, but this may have died down after the pandemic.

But I wasn't taking about food delivery, more Amazon delivery van full of products vs something on the order of 1 million tons of vehicles driving to the store. Amazon vans can do 300-500 deliveries during Christmas, and personal cars have gotten heavier. It's vastly more efficient except where you could take the subway or something. But in large Urban places with subways the van may only have to go to a single building to drop off hundreds of packages in some cases so may still win out vs hundreds of subway trips.Couldn still win out,and especially if factoring in human time.

Big delivery trucks to a few rural stops might not be efficient, but when you order from rurally your packages might get dropped off by something like a Camry making 10 deliveries, I've seen that from Walmart orders, or a smaller US mail truck.
I wouldn't have asked if I didn't have a real curiosity!

To use a real world example where this comes up a lot, lots and lots of code can be structured as something like:

accum = []
for x in something():
for y in something_else():
accum.append(operate_on(x, y))

I find structuring it like this much easier than fully expanding all of these out, which at best ends up being something like

accum = []
req = my_service.RpcRequest(foo="hello", bar=12)
rpc = my_service.new_rpc()
resp = my_service.call(rpc, req)

req = my_service.OtherRpcRequest(foo="goodbye", bar=12)
rpc = my_service.new_rpc()
resp2 = my_service.call(rpc, req)

for x in resp.something:
for y in resp2.something_else:
my_frobnicator = foo_frobnicator.new()
accum.append(my_frobnicator.frob(x).nicate(y))

and that's sort of the best case where there isn't some associated error handling that needs to be done for the rpc requests/responses etc.

I find it much easier to understand what's happening in the first case than the second, since the overall structure of the operations on the data is readily apparent at a glance, and I don't need to scan through error handling and boilerplate.

Like, looking at real-life examples I have handy, there's a bunch of cases where I have 6-10 lines of nonsense fiddling (with additional lines of documentation that would be even more costly to put inline!), and that's in python. In cpp, go, and java which I use at work and are generally more verbose, and have more rpc and other boilerplate, this is usually even higher.

So the difference is that my approach means that when you jump to a function, you can be confident that the actual structure and logic of that function will be present and apparent to you on your screen without scrolling or puzzling. Whereas your approach gives you that, say, 50% of the time, maybe less, because the entire function doesn't usually fit on the screen, and the structure may contain multiple logical subroutines, but they aren't clearly delineated.
Would love to help you with number 1 and 2. What’s the best way to reach out?
Hi, thank you! Fuzzy search is a great idea and I just added a very generous (%50) fuzzy matching! I hope you'll like it.

I'm also thinking about ordering the questions from easy and fun to more challenging ones.
Christ, why couldn't PE have won?
Not free, but something I‘m doing right now: Using Cursor‘s chat mode with my prepaid Anthropic key. Works pretty well as a stop gap.
Of course it doesn't. That's why it's presented as an analogy to the claim that was made.
Crazy amount of innovations in one technical report:

- successful fp8 quantized training for SOTA model

- multi token prediction, mostly to improve training results, but also to enable speculative decoding

- very high sparsity per request (37B activated params per 671B total params)

- using reasoning data (from DeepSeek R1) to fine-tune and improve results on math & coding

- manual balancing of compute / communication in their infrastructure, up to SM level