# Designing a Hook in Haskell (Video)

**URL:** <https://discourse.haskell.org/t/designing-a-hook-in-haskell-video/14488>\
**Category:** Show and Tell\
**Created:** [July 31, 2026, 9:14am UTC](https://discourse.haskell.org/t/designing-a-hook-in-haskell-video/14488 "2026-07-31T09:14:42Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![hungryjoe](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/hungryjoe/32/4331_2.png) [@hungryjoe](https://discourse.haskell.org/u/hungryjoe)\
**Post date:** [July 31, 2026, 9:14am UTC](https://discourse.haskell.org/t/designing-a-hook-in-haskell-video/14488/1 "2026-07-31T09:14:42Z")

</div>

[![](https://img.youtube.com/vi/ir7E8EDcAgA/maxresdefault.jpg "Designing A Hook (in Haskell)") ](https://www.youtube.com/watch?v=ir7E8EDcAgA)

In 2018, I designed a Parametric Hook in OpenSCAD, a Programmable CAD framework.

Since then, I’ve built my own library for Programmable CAD, called Waterfall-CAD.

In this video, I use Haskell and Waterfall-CAD, to reimplement the hook.

Links:

- [The Hook Model](https://www.doscienceto.it/blog/waterfall/hook.hs.html)
- [Waterfall-CAD on Github](https://github.com/joe-warren/opencascade-hs/)
- [Try Waterfall-CAD online](https://doscienceto.it/waterpark/)
- [Code for this video](https://github.com/joe-warren/video-generation)
