Мне любопытно, почему запятая <, > является ярлыком для and, а не andalso в тестах защиты.
Поскольку я назвал бы себя "родным C", я не вижу недостатков булевой оценки короткого замыкания.
Я скомпилировал некоторый тестовый код, используя флаг to_core, чтобы узнать, какой код действительно создан. Используя запятую, я вижу значение левой руки, а правое и значение оцениваются, и оба и. С andalso у вас есть блок-блок в блоке case и нет вызова erlang:and/2.
Я не тестировал тесты, но, полагаю, вариант andalso является более быстрым.