# \#funx

**URL:** https://forum.devtalk.com/tag/funx/3317.md

[Latest](https://forum.devtalk.com/latest.md) · [Categories](https://forum.devtalk.com/categories.md) · [Tags](https://forum.devtalk.com/tags.md)

---

## [Funx: Reducing Degrees of Freedom](https://forum.devtalk.com/t/funx-reducing-degrees-of-freedom/233345)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [9 February 2026 21:18 UTC](https://forum.devtalk.com/t/funx-reducing-degrees-of-freedom/233345 "2026-02-09T21:18:13Z")

</div>

Rules built from a consistent set of primitives with clear semantics are easier to reason about, review, and evolve. Includes a Livebook so you can try it yourself.

---

## [Funx: Free Your Predicates](https://forum.devtalk.com/t/funx-free-your-predicates/232416)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [2 February 2026 18:48 UTC](https://forum.devtalk.com/t/funx-free-your-predicates/232416 "2026-02-02T18:48:35Z")

</div>

Avoid burying your domain rules in control flow. Includes a Livebook so you can try it yourself.

---

## [Funx Eq: What does “same” mean in your domain?](https://forum.devtalk.com/t/funx-eq-what-does-same-mean-in-your-domain/231606)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [27 January 2026 18:42 UTC](https://forum.devtalk.com/t/funx-eq-what-does-same-mean-in-your-domain/231606 "2026-01-27T18:42:19Z")

</div>

How to model equality as a domain rule. Includes a Livebook so you can try it yourself.

---

## [Optics in Funx: optics don’t live alone. Lens, Prism, Traversal, and Iso work together](https://forum.devtalk.com/t/optics-in-funx-optics-don-t-live-alone-lens-prism-traversal-and-iso-work-together/230933)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [21 January 2026 19:56 UTC](https://forum.devtalk.com/t/optics-in-funx-optics-don-t-live-alone-lens-prism-traversal-and-iso-work-together/230933 "2026-01-21T19:56:16Z")

</div>

Connecting the pieces together. Includes a Livebook

---

## [Optics in Funx](https://forum.devtalk.com/t/optics-in-funx/230055)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [14 January 2026 22:09 UTC](https://forum.devtalk.com/t/optics-in-funx/230055 "2026-01-14T22:09:30Z")

</div>

Same thing, different representations. That’s an Iso. Includes a Livebook

---

## [Funx: Reorganizing Eq and Ord](https://forum.devtalk.com/t/funx-reorganizing-eq-and-ord/228376)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [1 January 2026 18:16 UTC](https://forum.devtalk.com/t/funx-reorganizing-eq-and-ord/228376 "2026-01-01T18:16:54Z")

</div>

When designing Funx I leveraged protocols, which meant some concessions. In Haskell, you can state class relationships like “every Monad is a Functor” (via superclass constraints). In Elixir, there isn’t an equivalent …

---

## [What happened?](https://forum.devtalk.com/t/what-happened/214250)

<div class="topic-metadata">

**Author:** [@JKWA](https://forum.devtalk.com/u/JKWA)\
**Replies:** 0\
**Last updated:** [10 September 2025 20:50 UTC](https://forum.devtalk.com/t/what-happened/214250 "2025-09-10T20:50:13Z")

</div>

Just checked in to see if Funx had hit 80 downloads. Instead: 1,327. In a single day. Any ideas on what happened?
