В Ruby стандартное соглашение заключается в использовании вопросительного знака в конце имени метода, чтобы указать, что метод возвращает логический результат:
[].empty? #=> true
Другим стандартным соглашением является завершение имени метода с восклицательным знаком, если метод является деструктивным (то есть он изменяет исходные данные):
mylist.sort! # sort mylist in-place
Недавно я видел те же самые соглашения, что и на Схеме. Что заставляет меня задуматься, что другие языки используют/поддерживают это соглашение? Существуют ли другие специальные символы, которые обычно используются для обозначения этими или другими языками?