# True and false which one?

**URL:** <https://racket.discourse.group/t/true-and-false-which-one/3060>\
**Category:** Questions & Answers\
**Created:** [July 30, 2024, 2:48pm UTC](https://racket.discourse.group/t/true-and-false-which-one/3060 "2024-07-30T14:48:55Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![matteo-daddio](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/matteo-daddio/32/1245_2.png) [@matteo-daddio](https://racket.discourse.group/u/matteo-daddio)\
**Post date:** [July 30, 2024, 2:48pm UTC](https://racket.discourse.group/t/true-and-false-which-one/3060/1 "2024-07-30T14:48:55Z")

</div>

In Racket is possible to write #t #T #true true and #f #F #false false.

Which one do you prefer?

I prefer #true and #false.

---

<div class="post-metadata">

**Author:** ![bakgatviooldoos](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/bakgatviooldoos/32/1381_2.png) [@bakgatviooldoos](https://racket.discourse.group/u/bakgatviooldoos)\
**Post date:** [July 30, 2024, 4:46pm UTC](https://racket.discourse.group/t/true-and-false-which-one/3060/2 "2024-07-30T16:46:47Z")

</div>

I am similarly in the `#true` and `#false` camp. I often find that the layout of the code is more salient with slightly longer atoms like these; especially a trailing `else`. The short names cause me to "miss" them somewhat.

---

<div class="post-metadata">

**Author:** ![shawnw](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/shawnw/32/1031_2.png) [@shawnw](https://racket.discourse.group/u/shawnw)\
**Post date:** [July 31, 2024, 7:31am UTC](https://racket.discourse.group/t/true-and-false-which-one/3060/3 "2024-07-31T07:31:04Z")

</div>

`t` and `nil` 😁

(In the R2RS days of scheme, `#!true` and `#!false` were used. That was dropped in R3RS.)

---

<div class="post-metadata">

**Author:** ![sschwarzer](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/sschwarzer/32/1940_2.png) [@sschwarzer](https://racket.discourse.group/u/sschwarzer)\
**Post date:** [August 2, 2024, 7:04am UTC](https://racket.discourse.group/t/true-and-false-which-one/3060/4 "2024-08-02T07:04:54Z")

</div>

`#t` and `#f` seem to be by far the most idiomatic, and they're also used in the Racket documentation. Therefore, I use them, too.

If it wasn't for the widespread use, I'd probably go with `#true` and `#false`, since otherwise they're clearer. Regarding the use of lowercase, it's the norm for symbol literals and identifiers.

---

<div class="post-metadata">

**Author:** ![LiberalArtist](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/liberalartist/32/151_2.png) [@LiberalArtist](https://racket.discourse.group/u/LiberalArtist)\
**Post date:** [August 2, 2024, 9:40pm UTC](https://racket.discourse.group/t/true-and-false-which-one/3060/5 "2024-08-02T21:40:06Z")

</div>

Likewise, I usually use `#t` and `#f` per convention, but do I sometimes use `#true` and `#false` to be extra explicit.

In particular, in prose, I've started writing e.g.:

```scheme
is provided and non-@racket[#false], then

```

because it seems more readable that `non-@racket[#f]`.

When choosing a font for Racket code, it is particularly important that `t` and `f` look distinct.
