# Functional Valhalla?

**URL:** https://discourse.haskell.org/t/functional-valhalla/13798
**Category:** Links
**Created:** [March 14, 2026, 1:48am UTC](https://discourse.haskell.org/t/functional-valhalla/13798 "2026-03-14T01:48:33Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![simonmic](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/simonmic/32/1796_2.png) [@simonmic](https://discourse.haskell.org/u/simonmic)
#### Post date: [March 14, 2026, 1:48am UTC](https://discourse.haskell.org/t/functional-valhalla/13798/1 "2026-03-14T01:48:33Z")

</div>

> **[Functional Valhalla?](http://bokesan.blogspot.com/2026/03/functional-valhalla.html)**
>
> Pointer-rich data layouts lead to suboptimal performance on modern hardware. For an excellent introduction to this, see the article   The Ro...

---

<div class="post-metadata">

### Author: ![sjoerdvisscher](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/sjoerdvisscher/32/1275_2.png) [@sjoerdvisscher](https://discourse.haskell.org/u/sjoerdvisscher)
#### Post date: [March 15, 2026, 10:24am UTC](https://discourse.haskell.org/t/functional-valhalla/13798/2 "2026-03-15T10:24:41Z")

</div>

The vector package comes with a way to derive Unbox instances using generics: [Data.Vector.Unboxed](https://hackage-content.haskell.org/package/vector-0.13.2.0/docs/Data-Vector-Unboxed.html#g:40)

---

<div class="post-metadata">

### Author: ![vollmerm](https://avatars.discourse-cdn.com/v4/letter/v/e9c0ed/32.png) [@vollmerm](https://discourse.haskell.org/u/vollmerm)
#### Post date: [March 17, 2026, 2:15pm UTC](https://discourse.haskell.org/t/functional-valhalla/13798/3 "2026-03-17T14:15:31Z")

</div>

We’ve been thinking about functional programming with dense, pointer-less recursive data for a while. See the work on Gibbon: [https://gibbon-compiler.github.io/](https://gibbon-compiler.github.io/)
