erlang имеет символьные литералы, обозначенные знаком доллара.
Erlang/OTP 22 [erts-10.6.1] [...]
Eshell V10.6.1 (abort with ^G)
1> $\s == 32.
%%⇒ true
Точно так же elixir имеет символьные литералы, которые согласно документации кода действует точно так же, как erlang символьные литералы:
Это именно то, что Эрланг делает с символами Erlang ($ a).
По сути, ?\s
в точности совпадает с ?
(вопросительный знак с пробелом.)
# ⇓ space here
iex|1 ▶ ?\s == ?
warning: found ? followed by code point 0x20 (space), please use ?\s instead
В ?\s
нет ничего особенного, как вы можете видеть:
for <<c <- " hello world ">>, c != ?o, into: "", do: <<c>>
#⇒ " hell wrld "
Кроме того, ruby также использует ?c
нотацию для литералов символов:
main> ?\s == ' '
#⇒ true