UpperCamelCase: modules & types
snake_case: variables and functions
This convention is shared, for example, with elixir (also FP Lang)
Also bang_functions! By convention, not enforced, indicate that the function may mutate one of its passed parameters. (Taken from Ruby's "be careful with this member function" idiom)
@at_sigil: macros (enforced by the language)