frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: LocalGPT – A local-first AI assistant in Rust with persistent memory

https://github.com/localgpt-app/localgpt
34•yi_wang•1h ago•13 comments

SectorC: A C Compiler in 512 bytes (2023)

https://xorvoid.com/sectorc.html
224•valyala•9h ago•43 comments

Speed up responses with fast mode

https://code.claude.com/docs/en/fast-mode
131•surprisetalk•9h ago•139 comments

Software factories and the agentic moment

https://factory.strongdm.ai/
166•mellosouls•12h ago•324 comments

Brookhaven Lab's RHIC concludes 25-year run with final collisions

https://www.hpcwire.com/off-the-wire/brookhaven-labs-rhic-concludes-25-year-run-with-final-collis...
54•gnufx•8h ago•54 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
148•vinhnx•12h ago•16 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
172•AlexeyBrin•15h ago•31 comments

IBM Beam Spring: The Ultimate Retro Keyboard

https://www.rs-online.com/designspark/ibm-beam-spring-the-ultimate-retro-keyboard
10•rbanffy•4d ago•1 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
287•jesperordrup•19h ago•93 comments

First Proof

https://arxiv.org/abs/2602.05192
111•samasblack•11h ago•72 comments

FDA intends to take action against non-FDA-approved GLP-1 drugs

https://www.fda.gov/news-events/press-announcements/fda-intends-take-action-against-non-fda-appro...
84•randycupertino•4h ago•183 comments

Show HN: I saw this cool navigation reveal, so I made a simple HTML+CSS version

https://github.com/Momciloo/fun-with-clip-path
64•momciloo•9h ago•13 comments

Al Lowe on model trains, funny deaths and working with Disney

https://spillhistorie.no/2026/02/06/interview-with-sierra-veteran-al-lowe/
93•thelok•11h ago•21 comments

Show HN: A luma dependent chroma compression algorithm (image compression)

https://www.bitsnbites.eu/a-spatial-domain-variable-block-size-luma-dependent-chroma-compression-...
33•mbitsnbites•3d ago•2 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
562•theblazehen•3d ago•206 comments

The F Word

http://muratbuffalo.blogspot.com/2026/02/friction.html
104•zdw•3d ago•52 comments

LLMs as the new high level language

https://federicopereiro.com/llm-high/
30•swah•4d ago•72 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
270•1vuio0pswjnm7•15h ago•452 comments

Microsoft account bugs locked me out of Notepad – Are thin clients ruining PCs?

https://www.windowscentral.com/microsoft/windows-11/windows-locked-me-out-of-notepad-is-the-thin-...
113•josephcsible•7h ago•133 comments

Eigen: Building a Workspace

https://reindernijhoff.net/2025/10/eigen-building-a-workspace/
10•todsacerdoti•4d ago•2 comments

Selection rather than prediction

https://voratiq.com/blog/selection-rather-than-prediction/
28•languid-photic•4d ago•9 comments

The silent death of good code

https://amit.prasad.me/blog/rip-good-code
71•amitprasad•3h ago•73 comments

I write games in C (yes, C) (2016)

https://jonathanwhiting.com/writing/blog/games_in_c/
177•valyala•9h ago•165 comments

Reinforcement Learning from Human Feedback

https://rlhfbook.com/
114•onurkanbkrc•14h ago•5 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
138•speckx•4d ago•212 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
896•klaussilveira•1d ago•273 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
223•limoce•4d ago•124 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
142•videotopia•4d ago•48 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
583•todsacerdoti•1d ago•283 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
298•isitcontent•1d ago•39 comments
Open in hackernews

Inlining – The Ultimate Optimisation

https://xania.org/202512/17-inlining-the-ultimate-optimisation
63•PaulHoule•4w ago

Comments

jayd16•3w ago
Is there a name for duplicating function calls such that different optimizations for the same function can be compiled, but they are not fully duplicated at every call site?
Someone•3w ago
I think that is called specialization (https://www.linkedin.com/posts/compilers-lab_compiler-progra...).

Even if the compiler doesn’t explicitly do it, it can happen when doing subsequent optimization steps after inlining such as constant folding and dead code elimination.

hinkley•3w ago
Specialization is one of the reasons my call trees are just a little bit deeper than what one would expect given my loud but moderate stance on function splitting. Uncle Bob is nuts for espousing one line functions. But the answer to Bob being a lunatic is not two page functions. I think you can say a lot in five to six lines, and not overshoot meaningful names into word salad because you’ve run out of ideas. That’s still small enough for branch prediction, inlining, and specialization to kick in per call site, particularly if some callers follow one conditional branch and the others favors the other.
taeric•3w ago
I think this is what the C++ world calls template specialization?
khuey•3w ago
If I understand what you're asking for correctly, function cloning.

If you have f(x, y) and the compiler realizes the function optimizes nicely when y == 2 it can create a clone of f with a fixed argument y == 2, optimize that, and rewrite the appropriate call sites to call the clone.

mgaunard•3w ago
Compilers aren't as good at doing that one unfortunately.
fweimer•3w ago
I think GCC calls the IPA (inter-procedural analysis) clones.

https://gcc.gnu.org/onlinedocs/gccint/IPA-passes.html https://gcc.gnu.org/onlinedocs/gccint/Regular-IPA-passes.htm... https://gcc.gnu.org/onlinedocs/gccint/Late-IPA-passes.html

mathisfun123•3w ago
specialization - i don't know if general purpose compilers do this but ML compilers specialize the hell out of kernels (based on constants, types, tensor dimensions, etc).

EDIT: i'm le dumb - this is the whole point of JIT compilers.

hinkley•3w ago
There was a weird period in JavaScript’s history where the threshold for inlining was rather fixed and counted comments as part of the function weight. So there was code that would go faster if you deleted the comments.

I believe it was counting AST nodes rather than bytes, otherwise that would have also created problems for descriptive function names as well and that would have been what we heard about instead of comments.

koyote•3w ago
I ran into a similarish issue in C++ (MSVC++) where a small change that improved an error message led to a 10% slowdown.

The function was something like:

  int ReturnAnswerIfCharIsValid(char* c)
  {
    if(c == nullptr)
      throw std::exception("ERROR!");

    return 42;
  }
The exception line was changed to something like:

  throw std::exception("Char is not valid, please fix it!"); // String is now longer
The performance of this hot-path function went down the drain.

I fixed it by replacing the exception call with yet another function call:

  if(c == nullptr)
     ThrowException();
Other fixes might have included something like __forceinline in the function signature.
hinkley•3w ago
It’s weird that something that should be in a constants pool would hit the inlining threshold.
on_the_train•3w ago
That's the reason why polymorphism is sometimes described as slow. It's not really slow... But it prevents inlining and therefore always is a function call as opposed to sometimes no function call. It's not the polymorphism is slow. It's that alternatives can sometimes compile to zero
branko_d•3w ago
On the other hand, if the compiler can prove at compile-time what type the object must have at run-time, it can eliminate the dynamic dispatch and effectively re-enable inlining.
MarsIronPI•3w ago
Which is why runtime polymorphism in Rust is very hard to do. The its focus on zero-cost abstractions means that the natural way to write polymorphic code is compiled (and must be compiled) to static dispatch.
khuey•3w ago
Compilers will also speculatively devirtualize under some circumstances.

https://hubicka.blogspot.com/2014/02/devirtualization-in-c-p...

armchairhacker•3w ago
Pedantic, but I assume you're referring to virtual methods?

Ad hoc polymorphism (C++ templates) and parametric polymorphism (Rust) can be inlined. Although those examples are slow to compile, because they must be specialized for each set of generic arguments.

jeffbee•3w ago
C++ tools can also devirtualize when doing whole-program optimization or tools like BOLT can promote indirect calls generated by any language.
dataflow•3w ago
Every 8 methods knock out at least 1 cache line for you (on x64, at least). You're probably not calling 8 adjacent methods on the same exact type either, you're probably doing something with a larger blast radius. Which means sacrificing even more of caches. And this doesn't show up in the microbenchmarks people normally write because they vtables are hot in the cache.

So you're really banking on this not affecting your program. Which it doesn't, if you keep it in mind and do it sparingly. But if you start making everything virtual it should hit you vs. merely making everything noinline.

mgaunard•3w ago
force inline and related attributes are critical to get the right decision made consistently.

There's also flatten; unfortunately no equivalent with MSVC.

rkrbaccord94f•3w ago
Deprecated: string inlining the bool error in cross-site compiler.

Inlining the upper character: (char c, bool upper) as 0xff subtraction.