# Choosing Between Returning VOID and HEAVY VOID

**URL:** <https://revolt.metaeducation.com/forum/t/choosing-between-returning-void-and-heavy-void/2171>\
**Category:** Questions\
**Created:** [March 9, 2024, 2:30am UTC](https://revolt.metaeducation.com/forum/t/choosing-between-returning-void-and-heavy-void/2171 "2024-03-09T02:30:26Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![bradrn](https://revolt.metaeducation.com/forum/user_avatar/revolt.metaeducation.com/bradrn/32/365_2.png) [@bradrn](https://revolt.metaeducation.com/forum/u/bradrn)\
**Post date:** [March 9, 2024, 2:30am UTC](https://revolt.metaeducation.com/forum/t/choosing-between-returning-void-and-heavy-void/2171/1 "2024-03-09T02:30:26Z")

</div>

> [@NULL/VOID/NONE/TRASH evolution from NONE!/UNSET!](https://revolt.metaeducation.com/forum/t/null-void-none-trash-evolution-from-none-unset/2422/3):
>
> Void is used generically in many places when you want things to vanish:
> 
> ```plaintext
> >> compose [<a> (if 1 > 2 [<b>] else []) <c>]
> == [<a> <c>]
> 
> ```

Ah-ha… I’d completely missed this use of void, as a return value.

Though this does now raise the question of whether a function should return VOID (antiform COMMA!) or HEAVY VOID (empty antiform PACK!) Both seem to vaporise in lists, after all.

I guess it depends on whether you want the function call to be ignored or not.

---

_[View the full topic](https://revolt.metaeducation.com/forum/t/choosing-between-returning-void-and-heavy-void/2171)._
