Pull to refresh

Трудности перевода: когда 2*2=5

Reading time1 min
Views1.4K
Представьте себе: ваш племянник спрашивает у вас, сколько будет 2*2+1. Вам не до того, и вы переадресовываете вопрос своему интерпретатору, который честно отвечает: 6. Внимание, вопрос: благодаря какому языку программирования ваш племянник завтра получит двойку?

Правильный ответ — J. В этом языке глаголы (любые действия над данными, в том числе и арифметические операции) не имеют приоритета и в отсутствие скобок выполняются справа налево. Таким образом, запрос 2*2+1 эквивалентен не привычному для большинства из нас (2*2)+1, а 2*(2+1).

P.S. Я подозреваю и почти уверена, что языков с нарушениями традиционного приоритета арифметических действий больше одного, но с другими пока что не доводилось иметь дело.
Tags:
Hubs:
Total votes 141: ↑99 and ↓42+57
Comments70

Articles