Как стать автором
Обновить
1
0
Дмитрий @dima_mendeleev

Пользователь

Отправить сообщение
А я и так знаю, что ООП — это сакс :-D
… но почитаю, чтобы в который раз убедиться.
А вот эта фраза, о 100К строк кода за 10^(-12) секунд: сейчас его мобильник может за то же время скомпилить 100 миллиардов строк???
Поясните пожалуйста, я только недавно сел за Ерланг — очень нравится, но не хочется расстраиваться из-за автора…
А почему вы ее в Хаскел хаб не добавляете?
Если бы не фпрог.ру, я бы и не знал, что вы пишете…
Ухты! Так это же «Ерланг в кристалле»? :-D
>… и представим, что она состоит из желе, будучи при этом жёстко прикреплена к оси ординат. Теперь «подуем» на неё снизу…
Очень хорошо, что вы это понимаете, такого чувства «графика» многим не хватает.
Возникла та же мысль: «Разве уже пятница?»
Нет, коте все же нужен, так можно тестировать соответствующий функционал.
Нет, дает, я вот все проскролил, но из этого все стало ясно.
Уррррра!!!
Теперь я смогу быть с любимой операционкой где захочу и когда захочу :-D
Ну какое лямбда-исчисление?
Давайте «Рекурсия и типы рекурсий»!!!
Зарплата! Сколько можно? :-D
Даешь неделю зарплаты на Хабре!!!
А вот если бы вы как то резюмировали это все дело, пояснили что-ли, тогда еще и мне было бы не так скучно.
Так это же классно: наличие указателей дает определенное ускорение, где это критично, а отсутствие адресной арифметики и сборка мусора делает использование указателей безопасным.
А это ООП?
data Animal = Animal {
  speak :: Int -> String, 
  move :: Int -> String,
  act :: Int -> String
}

base self = Animal {
   speak = \repeats -> "",
   move = \repeats -> "",
   act = \repeats -> (self  `move` repeats) ++ (self  `speak` repeats)
}

{- One type of animal -}
bird self = let super = base self in Animal {
   speak = \repeats -> concat $ replicate repeats "cheep ", 
   move = \repeats -> concat $ replicate repeats "flap ",
   act = (super `act`)
}

{- Another type of animal -}
dog self = let super = base self in Animal {
   speak = \repeats -> concat $ replicate repeats "bark ", 
   move = \repeats -> concat $ replicate repeats "run ",
   act = (super `act`)
}

new f = f (new f)

b = new bird
d = new dog

*Main> b `act` 2
"flap flap cheep cheep "

Взято отсюда. BTW интересное обсуждение.
> концентрат клевости и мануальности
Это вы так хотите (все хотят), но мануальности и клевости на Хабре действительно маловато, больше идиотизма и бесполезности.
>… с точки зрения полученной производительности на вложенный доллар…
Производительность — это 5 % от всего проекта, и вы должны согласится с этим, если вы конечно не разработчик драйверов.
А если вы захотите привести в пример распределенные системы, то погуглите какие языки занимают центральные места при их разработке и в чем основные проблемы.
*а Саттера смотрите сами, я лучше Саймона Пейтона Джонса посмотрю.
А не перестанет ли функция, гуляющая по стеку, быть constexpr?
Ну можно и без трех точек через variadic templates.
Ну а если с тремя точками, то нужно рассматривать стек как массив и уже бегать по массиву. Но там выравнивание и всякое такое. Хотя на этапе компиляции работа с памятью хорошо контролируется, в частности проверка границ.
Ага, вот так вот одна-единственная женщина перевернет мир.
Хотя если так, то респект конечно: женщина и С++
А что вам не так? auto/scoped/unique_ptr не считают ссылки, поэтому они и легче.
Или в Objective-C магия какая-то?

Информация

В рейтинге
Не участвует
Откуда
Украина
Зарегистрирован
Активность