Re[14]: Мои пять козявок на тему Почему у Nemerle нет будуще
От: night beast СССР  
Дата: 21.08.06 09:04
Оценка:
Здравствуйте, Gaperton, Вы писали:

NB>>Тогда еще вопрос. Зачем нужны макросы.

NB>>ИМХО, они позволяют
NB>>1. избежать дублирования кода.
G>Самые обычные функции с этим прекрасно справляются.

ну вот из последнего
#define MAKE_BINARY_OP(NAME,name,T1,OP,T2,RET) \
  struct NAME : lambda::Lambda<NAME>           \
  {                                            \
...
  } const name = NAME ();                      \
                                               \
  template< typename T1,typename T2 >          \
  lambda::proxy< NAME, lambda::tuple<T1 const, T2 const> > operator OP ( T1 const & x, T2 const & y ) { \
    return lambda::proxy< NAME, lambda::tuple<T1 const, T2 const> > ( name, lambda::make_tuple (x,y) ); \
  }

MAKE_BINARY_OP (Plus,plus,T1,+,T2,T1)
MAKE_BINARY_OP (Minus,minus,T1,-,T2,T1)


как сделать с помощью функций?

NB>>2. описывать проблему в терминах этой самой проблемы.

G>Адекватный выбор идентификаторов прекрасно позволяет это сделать.

G>Попробуй привести конкретные прикладные примеры, показывающие, когда это работать не будет.


NB>>Что из перечисленного мешает сопровождению кода.


G>Примеры мои смотрел? Или я впустую пишу?


ладно, давай рассмотрим.
a = b + c + d


что предлагается взамен?

NB>>гибкость теха позволяет писать запутанный текст. но это не делает его плохим языком.

NB>>сообщество выработало стиль, устраняющий эту проблему.
NB>>что препятствут другим пойти этим путем?
G>Ничего. Иди этим путем. В третий раз подряд объяснять разницу между тех-ом и языками программирования у меня нет сил, извини. Пиши с макросами, я не против.

спасибо тебе, добрый человек.
у меня без твоего разрешения работа стояла...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.