Здравствуйте, eao197, Вы писали:
G>>Кошмар. Как много буков надо написать, и как много надо знать, просто для того, чтобы сообщения получить. Сложную логику за таким кодом будет не разобрать.
E>В статически-типизированных языках с анотацией типов так же приходится писать больше букв, чем в динамически-типизированных языках. Тем не менее, подобная аннотация позволяет разрабатывать большие, многолюдные, длительные проекты с меньшими трудозатратами, чем в случае динамической типизации. Как раз потому, что логику легче отслеживать благодоря лишним буквам.
Я довольно неплохо знаком на практике как со "статически типизированными языками", так и с многолюдными, длительными проектами. И с С++ тоже.
Твой код мне не нравится. Это далеко не лучший на мой взгляд подход к проблеме в случае С++. Слишком сложно, и на практике будет неудобно. Синхронный код гораздо компактнее и понятнее, чем асинхронный, разница примерно в два раза как по времени написания и отладки, так и по объему этого кода. И он, разумеется, читабельнее.
E>А уж если брать микропримеры, то Hello, World на C++ гораздо многословнее, чем на Ruby. Но на таком сравнении бессмыслено делать заключения о возможностях C++.
Я не говорю о микропримерах. Это в твоей статье кроме них ничего нет.
G>>Можешь пример прикладного кода привести для иллюстрации?
E>Вот, например, описание агента. Более-менее сложного.
Концы. И в результате, чтобы все более-менее прилично выглядело, тебе пришлось задействовать макросы. Здравствуй, старый добрый MFC-style.
Плохо.