frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Mechanical Watch: Exploded View

https://fellerts.no/projects/epoch.html
404•fellerts•5h ago•62 comments

Git Notes: Git's coolest, most unloved­ feature (2022)

https://tylercipriani.com/blog/2022/11/19/git-notes-gits-coolest-most-unloved-feature/
322•Delgan•11h ago•92 comments

2048 with only 64 bits of state

https://github.com/izabera/bitwise-challenge-2048
49•todsacerdoti•3d ago•9 comments

LibRedirect – Redirects popular sites to alternative privacy-friendly frontends

https://libredirect.github.io
334•riffraff•14h ago•86 comments

The cultural decline of literary fiction

https://oyyy.substack.com/p/the-cultural-decline-of-literary
52•libraryofbabel•4h ago•99 comments

Allocators Are Monkeys with Typewriters

https://tgmatos.github.io/allocators-are-for-monkeys-with-typewriters/
46•gilgamesh3•3d ago•14 comments

TPU Deep Dive

https://henryhmko.github.io/posts/tpu/tpu.html
335•transpute•17h ago•63 comments

How to negotiate your salary package

https://www.complexsystemspodcast.com/episodes/how-to-negotiate-your-salary-package/
115•surprisetalk•3d ago•83 comments

Low-Temperature Additive Manufacturing of Glass

https://www.ll.mit.edu/research-and-development/advanced-technology/microsystems-prototyping-foundry/low-temperature
88•LorenDB•4d ago•16 comments

Show HN: A Tool to Summarize Kenya's Parliament with Rust, Whisper, and LLMs

https://github.com/c12i/bunge-bits
51•collinsmuriuki•2h ago•6 comments

How fast are Linux pipes anyway?

https://mazzo.li/posts/fast-pipes.html
140•keepamovin•13h ago•13 comments

Show HN: Turn a paper's DOI into its full reference list (BibTeX/RIS, etc.)

https://references.mireklzicar.com
3•mireklzicar•2h ago•0 comments

Kilauea volcano errupts, lava more than 1k feet high [video]

https://www.youtube.com/watch?v=oG5zz9Sjw3E
37•asix66•2d ago•17 comments

What would happen if you tried to land on a gas giant?

https://www.popsci.com/science/can-we-land-on-jupiter-saturn/
12•Bluestein•50m ago•0 comments

Mbake – A Makefile formatter and linter, that only took 50 years

https://github.com/EbodShojaei/bake
195•rainmans•2d ago•92 comments

Sound As Pure Form: Music Language Inspired by Supercollider, APL, and Forth

https://github.com/lfnoise/sapf
168•mindcrime•18h ago•34 comments

Lawrence Yun on the State of U.S. Housing Market

https://www.c-span.org/program/washington-journal/lawrence-yun-on-the-state-of-us-housing-market/661482
6•mooreds•51m ago•0 comments

Let's Talk About Writing in Tech

https://www.gmoniava.com/blog/lets-talk-about-writing-in-tech
15•gmoniava•1h ago•9 comments

Show HN: I'm a doctor and built a responsive breathing app for anxiety and sleep

https://apps.apple.com/us/app/lungy-breathing-exercises/id1545223887
67•lukko•10h ago•28 comments

P-Hacking in Startups

https://briefer.cloud/blog/posts/p-hacking/
270•thaisstein•4d ago•121 comments

Largest Wildlife Bridge Spanning 10 Lanes of CA 101 Is Nearly Complete

https://www.thedrive.com/news/worlds-largest-wildlife-bridge-spanning-10-lanes-of-101-freeway-is-nearly-complete
112•PaulHoule•3d ago•62 comments

Show HN: Report idling vehicles in NYC (and get a cut of the fines) with AI

https://apps.apple.com/us/app/idle-reporter-for-nyc-dep/id6747315971
87•rafram•3h ago•108 comments

Triaging security issues reported by third parties

https://gitlab.gnome.org/GNOME/libxml2/-/issues/913
15•zdw•3d ago•1 comments

Harry Brearley, the creator of stainless steel (2016)

https://nautil.us/the-father-of-modern-metal-235939/
69•bookofjoe•7h ago•27 comments

LaborBerlin: State-of-the-Art 16mm Projector

https://www.filmlabs.org/wiki/en/meetings_projects/spectral/laborberlin16mmprojector/start
202•audionerd•1d ago•34 comments

uBlock Origin Lite Beta for Safari iOS

https://testflight.apple.com/join/JjTcThrV
369•Squarex•1d ago•109 comments

Airpass – Easily overcome WiFi time limits

https://airpass.tiagoalves.me/
361•herbertl•4d ago•242 comments

Load Test GlassFlow for ClickHouse: Real-Time Dedup at Scale

https://www.glassflow.dev/blog/load-test-glass-flow-for-click-house-real-time-deduplication-at-scale
19•super_ar•3d ago•9 comments

Denmark's Archaeology Experiment Is Paying Off in Gold and Knowledge

https://www.scientificamerican.com/article/denmark-let-amateurs-dig-for-treasure-and-it-paid-off/
195•sohkamyung•4d ago•99 comments

Type Inference Zoo

https://zoo.cuichen.cc/
149•mpweiher•4d ago•5 comments
Open in hackernews

Allocators Are Monkeys with Typewriters

https://tgmatos.github.io/allocators-are-for-monkeys-with-typewriters/
46•gilgamesh3•3d ago

Comments

davydm•3d ago
lol, I read this as "alligators are monkeys with typewriters" and thought it would be a well interesting article

but it's just more blah-blah about ai :/

triknomeister•4h ago
As Andrei Alexandrescu famously said, "Allocator is to allocation what alligators is to allegation"

https://www.youtube.com/watch?v=LIb3L4vKZ7U

bitwize•3h ago
So when people retool their application to use GC do they say "See you later, allocator!"?

...I'll be here all week. Try the veal!

layer8•2h ago
It’s actually without GC that you have to see the allocator again later, to free the memory.
freeone3000•4h ago
I think you might be commenting on the wrong article — this is an implementation of a memory allocator, as in, malloc.
pmelendez•4h ago
AI? This article is about memory allocation strategies... Did I miss something?
wavemode•3h ago
On first seeing this I wasn't sure what analogy the author was trying to make. After reading the article my best guess is that they are simply trying to say that, writing an allocator is easier than it seems on the surface.

Though it's not clear to me that the article does a good job of establishing that this is actually true ("mimalloc is only a few thousand lines of code" doesn't pass the smell test).

majormajor•2h ago
Yeah, re: the title, the URL/path string "allocators-are-for-monkeys-with-typewriters" (including on the page) seems more clear about that "less hard than you'd think" thing than the larger-font published headline "Allocators are Monkeys With Typewriters". And of course the quote in the article is even more specific "given enough time, even a monkey with a typewriter can write a memory allocator".

I generally agree with the "memory management doesn't have to be as complicated as you might think" vibe, especially if you've read about some optimizations in fancy modern GCs and aren't aware of what a basic simple non-GC world can look like. That said, of course, you can indeed get into a lot of complexity beyond the textbook 101 examples. Like the mentioned threading...

b0a04gl•3h ago
but saying they're useless ignores a bunch of real systems that wouldn't run without them.

in unity, you literally can't do burst compiled jobs efficiently unless you choose the right allocator. they expose `Temp`, `Persistent`, etc because GC isn't even an option when you're fighting for milliseconds per frame. no allocator choice = frame skips = shipped bugs.

in embedded, FreeRTOS gives you multiple heap implementations for a reason. sometimes you need fixed size pools, sometimes you care about fragmentation. malloc's out of the question. same in any real time firmware, safety critical or not.

infra world has been using arena allocators for years. folly's `Arena`, grpc's arena, even jemalloc has thread caching and slab style region reuse built in. this isn't academic. large scale systems hit allocation pressure that general purpose allocators can't tune for globally.

and rust's whole alloc abstraction : it's more about expressing ownership across lifetimes in memory sensitive codebases. `Bumpalo` isn't a premature optimization. it's what you reach for when you know the object graph layout and want to free it in one call. also safe by design. it's not even painful to use.

imo allocator choice is an interface decision. it shapes how the rest of your code handles memory lifetimes. once you start passing memory lifetimes as part of your type system or job model, the whole architecture shifts. this is way deeper than faster malloc

tantalor•3h ago
Stupid title
jasonthorsness•3h ago
Applications should use more special-purpose memory allocators. Much of the complexity in memory management is designing for an unknown usage pattern and things can be quite simple when allocator is specialized and patterns are predictable.

This is difficult though in higher-level languages. Go tried and failed with arenas.

keeptrying•3h ago
From the title I thought he meant VCs.
xeonmc•2h ago
Those would be alligators, rather.
the__alchemist•36m ago
I have an STM32 rust project I've been working on this week. It talks to an ESP using protobuf/RPC.

I'm doing it bare-metal/no allocator, as I do most embedded projects... and it's flirting with running me out of memory! What do most (and the most popular) protobuf libs do in rust? Use an allocator. What does the ESP itself do? Use an allocator (with FreeRTOS).

Meanwhile I'm using Heapless (Vec and String syntax with a statically-allocated array), on a MCU with 128K flash and 32K Ram... This won't end well.