frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Packed Data Support in Haskell

https://arthi-chaud.github.io/posts/packed/
77•matt_d•8mo ago

Comments

nine_k•8mo ago
> Introducing the ‘packed’ data format, a binary format that allows using data as it is, without the need for a deserialisation step. A notable perk of this format is that traversals on packed trees is proven to be faster than on ‘unpacked’ trees: as the fields of data structures are inlines, there are no pointer jumps, thus making the most of the L1 cache.

That is, a "memory dump -> zero-copy memory read" of a subgraph of Haskell objects, allowing to pass such trees / subgraphs directly over a network. Slightly reminiscent of Cap'n Proto.

90s_dev•8mo ago
We are always reinventing wheels. If we didn't, they'd all still be made of wood.
Zolomon•8mo ago
They mention this in the article.
spockz•8mo ago
It reminds me more of flat buffers though. Does protobuf also have zero allocation (beyond initial ingestion) and no pointer jumps?
cstrahan•8mo ago
No, one example of why being variable sized integers.

See https://protobuf.dev/programming-guides/encoding/

carterschonwald•8mo ago
One thing that sometimes gets tricky in these things is handling Sub term sharing. I wonder how they implemented it.
tlb•8mo ago
> the serialised version of the data is usually bigger than its in-memory representation

I don’t think this is common. Perhaps for arrays of floats serialized as JSON or something. But I can’t think of a case where binary serialization is bigger. Data types like maps are necessarily larger in memory to support fast lookup and mutability.

nine_k•8mo ago
I suppose all self-describing formats, like protobuf, or thrift or, well, JSON are bigger than the efficient machine representation, because they carry the schema in every message, one way or another.
IsTom•8mo ago
If you use a lot of sharing in immutable data it can grow a lot when serializing. A simple pathological example would be a tree that has all left subtrees same as the right ones. It takes O(height) space in memory, but O(2^height) when serialized.
gitroom•8mo ago
honestly i wish more stuff worked this way - fewer hops in memory always makes me happy
lordleft•8mo ago
This was very well written. Excellent article!
NetOpWibby•8mo ago
Is this like MessagePack for Haskell?

2026 Pennsylvania Health Insurance Outlook

https://www.reddit.com/r/antiwork/s/RKSoJvplUP
1•bilbywilby•1m ago•0 comments

Why Can't New York Get Rid of 2-Person Subway Crews?

https://reason.com/2026/01/17/why-cant-new-york-get-rid-of-2-person-subway-crews/
1•mhb•1m ago•0 comments

WhatsApp Took over the Global Conversation

https://www.newyorker.com/magazine/2026/01/19/how-whatsapp-took-over-the-global-conversation
1•romanovtexas•1m ago•0 comments

Sen. Bernie Sanders slams Mehmet Oz for praising robot ultrasounds in Alabama

https://thehill.com/homenews/senate/5693814-sanders-oz-robots-ultrasounds-alabama/
2•taimurkazmi•2m ago•0 comments

Nano Banana Pro-Studio-Quality AI Image GeneratorNano Banana Pro

https://bananapro.pro/
1•guowuzong•4m ago•1 comments

Alternatives to MinIO for single-node local S3

https://rmoff.net/2026/01/14/alternatives-to-minio-for-single-node-local-s3/
1•birdculture•5m ago•0 comments

One can mock the righteous, but Google won't index it

https://philip.greenspun.com/blog/2026/01/17/one-can-mock-the-righteous-but-google-wont-index-it/
1•mhb•5m ago•0 comments

Corporate Governance Authoritarianism

https://www.businesslawprofessors.com/2026/01/corporate-governance-authoritarianism/
2•_delirium•10m ago•0 comments

ComfyUI – Overview

https://docs.comfy.org/development/overview
1•eustoria•10m ago•0 comments

The Malloc Maleficarum (2005)

https://seclists.org/bugtraq/2005/Oct/118
1•todsacerdoti•10m ago•0 comments

The thing that brought me joy

https://www.stephenlewis.me/blog/the-thing-that-brought-me-joy/
1•monooso•11m ago•0 comments

From culinary dud to stud: how Dutch plant breeders built a brussels sprouts boo

https://www.npr.org/sections/thesalt/2019/10/30/773457637/from-culinary-dud-to-stud-how-dutch-pla...
2•fanf2•11m ago•0 comments

U.S. Habits That Shock the Rest of the World

https://www.buzzfeed.com/jennaguillaume/strange-american-customs
2•eustoria•12m ago•0 comments

How Computers Work

https://www.aweineverything.com/how-computers-work/
3•tadaspetra•13m ago•0 comments

The crisis whisperer: how Adam Tooze makes sense of our bewildering age

https://www.theguardian.com/business/2026/jan/15/the-crisis-whisperer-how-adam-tooze-makes-sense-...
3•hackandthink•16m ago•0 comments

Facing the Paradox of Software Visualization

https://dundalek.com/entropic/softviz-paradox/
1•vitalnodo•16m ago•0 comments

Darwin Core

https://en.wikipedia.org/wiki/Darwin_Core
1•tosh•16m ago•0 comments

Musk seeks up to $134B from OpenAI and Microsoft in 'wrongful gains'

https://www.cnbc.com/2026/01/17/musk-lawsuit-opena-microsoft.html
3•dhfbshfbu4u3•18m ago•0 comments

Show HN: Xarticles – Browse X articles by category

https://xarticles.io/
1•vierj•23m ago•0 comments

FreeBSD 15.1 Aims to Have KDE Desktop Installer Option

https://www.phoronix.com/news/FreeBSD-15.1-KDE-Desktop-Option
2•mikece•23m ago•0 comments

Raising money fucked me up

https://blog.yakkomajuri.com/blog/raising-money-fucked-me-up
2•yakkomajuri•25m ago•0 comments

AWS databases now live on Vercel Marketplace and v0

https://vercel.com/blog/aws-databases-are-now-live-on-the-vercel-marketplace-and-v0
1•braebo•25m ago•0 comments

Show HN: Interactive timeline of US Military bases and interventions, 1900–today

https://metaphorician.com/american-empire
1•metaphorician•26m ago•0 comments

QucsStudio: A free and powerful circuit simulator

https://qucsstudio.de/
1•teleforce•26m ago•0 comments

I Used Claude to Build a Transcription Bot That Learns from Its Mistakes

https://www.macstories.net/stories/how-i-used-claude-to-build-a-transcription-bot-that-learns-fro...
2•tosh•27m ago•0 comments

Reverse Engineering a Biometric Attendance Machine

https://www.onlydarshan.com/posts/first_blog
2•leon3rd•28m ago•0 comments

ICML Experimental Program Using Google's Paper Assistant Tool (PAT)

https://blog.icml.cc/2026/01/14/icml-experimental-program-using-googles-paper-assistant-tool-pat/
1•fahrbach•29m ago•0 comments

Show HN: Upseated – Swap airplane seats with other passengers

https://upseated.com/
1•ndshrubs•29m ago•1 comments

Automation Isn't Innovation

3•geroge_kyaw•34m ago•0 comments

Writes vs. Talks About Software

https://substack.com/inbox/post/184880745
3•markferree•34m ago•0 comments