Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
if x > 0 then sin else cos fi (x)
if x > 0 then sin(x) else cos(x) fi
Т.е. и условное выражение изобретено до С, просто запись ( a ? b : c ) мне кажется гораздо более читабельной, чем if a then b else c fi
Да, более читабельной после того, как привык, но инструмент должен быть удобным в работе, а не лёгким в освоении. Осваивается один раз, а используется потом долго и экономить время и силы нужно на этапе использования, а не освоения.
Гораздо яснее преимущество такой записи "вычисляемого вызова" видно тогда, когда и результат вызова присваивается какой-то переменной, и в аргументов штуки три, и там замешаны какие-то ptr->substruct.field, плевать даже на то, что компилятор может по двум разным ветвям
if (a)
p->b = funcC(.....);
else
p->b = funcD(.....);
Не скажу, что я регулярно пользуюсь таким способом, но когда выпадает вызывать две разных функции с одними и теми же аргументами - не стесняюсь. Как и с любым другим языком, тем же русским или украинским - в повседневной жизни можно использщовать ограниченный набор слов и оборотов, но, помимо этого, можно знать, понимать и, при необходимости, использовать какие-то редкие слова/пословицы/фразеологизмы, а можно оставаться на уровне "мне один кофе и один булка". Кого мы назовём знающим язык?
А паскаль-программу, как и фортран-программу, можно написать и на С :-)