Hacker News new | ask | show | jobs
by mlochbaum 1777 days ago
BQN uses the term "atom" for such values[0]. They include numbers, characters, and functions, as well as namespaces—really "atom" just means "non-array". These are the values that can't be split apart by array operations, but they might still be made up of multiple things, for example a function train[1].

In contrast, primitives are the starting point for programming, particularly tacit programming ("point-free" in Haskell). While the two names have a similar meaning, I think it fits a little better to call values that are indivisible from a particular perspective "atoms" and the ones that are meant to really be fundamental "primitives".

[0] https://mlochbaum.github.io/BQN/doc/types.html

[1] https://mlochbaum.github.io/BQN/doc/train.html