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•10mo ago

Comments

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

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

carterschonwald•10mo ago
One thing that sometimes gets tricky in these things is handling Sub term sharing. I wonder how they implemented it.
tlb•10mo 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•10mo 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•10mo 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•10mo ago
honestly i wish more stuff worked this way - fewer hops in memory always makes me happy
lordleft•10mo ago
This was very well written. Excellent article!
NetOpWibby•10mo ago
Is this like MessagePack for Haskell?

Benzene changed chemistry forever – with Judy Wu [video]

https://www.youtube.com/watch?v=0kYMUFzylOs
1•mariuz•1m ago•0 comments

I Didn't Like App Launchers for Arch Linux, So I Wrote My Own in Rust

https://rafaelzimmermann.com/posts/app-launcher-rust.html
1•auxtmp•4m ago•0 comments

OpenPencil – AI-native design editor. Open-source Figma alternative

https://github.com/open-pencil/open-pencil
1•xlmnxp•4m ago•0 comments

Understanding Rope: From Rotary Embeddings to Context Extension

https://mli0603.notion.site/Understanding-RoPE-From-Rotary-Embeddings-to-Context-Extension-316a34...
1•sebg•4m ago•0 comments

Mobile Is Not a Smaller Web App

https://dinkomarinac.dev/blog/common-mobile-ux-mistakes-i-see-in-almost-every-project/
1•dinko7•5m ago•0 comments

UKI: Unified kernel images for booting Linux from UEFI

https://uapi-group.org/specifications/specs/unified_kernel_image/
1•fanf2•6m ago•0 comments

FinMind Universal Deployment (Docker and K8s and Tilt)

https://github.com/rohitdash08/FinMind/pull/283
1•eyedark•7m ago•0 comments

Kuva: A scientific plotting library in Rust

https://github.com/Psy-Fer/kuva
1•sebg•10m ago•0 comments

Vercel down in Dubai, EU affected also

https://www.vercel-status.com
1•techterrier•11m ago•1 comments

Overlooked and overexploited: Extensive conversion of grasslands and wetlands

https://www.pnas.org/doi/10.1073/pnas.2521183123
1•robtherobber•11m ago•0 comments

Open source Bluetooth dynamometer for climbing training

https://crimpdeq.com/
1•sergiogasquez•14m ago•1 comments

Robotics changes everyday but it is still the same three things

https://vruga.site/wonder-robotics-three-things.html
1•sebg•14m ago•0 comments

Show HN: OpenBerth – Deploy AI-built apps and tools to your own server

https://openberth.io/
2•Amirso•16m ago•0 comments

Show HN: FinMind One-Click Deployment (Docker and K8s and Tilt)

https://github.com/rohitdash08/FinMind/pull/283正文(直接复制):
1•eyedark•16m ago•0 comments

Show HN: Why LLM Personas Collapse and How Structural Identity Fixes It

1•WujieGuGavin•17m ago•0 comments

Show HN: Bunny Calculator – A fast, free, and clean suite of web calculators

https://bunnycalculator.com/en
1•priteshkoshiya•19m ago•0 comments

The Orality Theory of Everything

https://www.theatlantic.com/ideas/2026/02/social-media-literacy-crisis/686076/
1•robinhoodexe•19m ago•0 comments

Really? We're Fucking Doing This Again?

https://theshovel.com.au/2025/06/23/really-were-fucking-doing-this-again/
2•JPLeRouzic•19m ago•0 comments

Show HN: Hush: Blur your messy desktop during screen sharing (macOS)

https://apps.apple.com/us/app/hush-screen-share-focus/id6757990863?mt=12
2•Olersandrkoz•21m ago•0 comments

Ask HN: What sources like HN do you consume?

4•DavidHaerer•21m ago•0 comments

Hardware hotplug events on Linux, the gory details

https://arcanenibble.github.io/hardware-hotplug-events-on-linux-the-gory-details.html
1•todsacerdoti•22m ago•0 comments

Australia Announces Support for US Invasion of [Insert Country Here]

https://theshovel.com.au/2026/03/02/australia-announces-support-for-us-invasion-of-insert-country...
2•robtherobber•22m ago•0 comments

Apache Iggy's migration to thread-per-core architecture powered by io_uring

https://iggy.apache.org/blogs/2026/02/27/thread-per-core-io_uring/
1•ot•23m ago•0 comments

Test Your Claude Code Skills

https://claude-code.vercel.app/test
1•Krishnaa_•25m ago•1 comments

Motorola confirms GrapheneOS support for a future phone, bringing over features

https://9to5google.com/2026/03/01/motorola-confirms-grapheneos-partnership-for-a-future-smartphon...
3•microflash•26m ago•0 comments

Ask HN: How are you all staying sane?

2•throwaway53463•28m ago•1 comments

U.S. science agency moves to restrict foreign scientists from its labs

https://www.science.org/content/article/nist-moves-restrict-foreign-scientists-its-labs
1•JeanKage•28m ago•0 comments

How to Write a Good Spec for AI Agents

https://www.oreilly.com/radar/how-to-write-a-good-spec-for-ai-agents/
1•pella•30m ago•0 comments

Show HN: XPilot – Your X presence, on autopilot

https://xpilot.so
1•alexcloudstar•30m ago•0 comments

cargo-shear: Remove unused dependencies in a Rust project

https://github.com/Boshen/cargo-shear
2•modinfo•33m ago•0 comments