Хмм… Честно говоря я бы понял, если бы вы привели go в качестве примера (с его goroutine), или скалу с актёрами. Но ссылка на сообщение 3х летней давности, которую даже невозможно проверить или посмотреть исходники… Кто то слышал про этот Kilim с тех пор?
Вы видимо не поняли, для чего писался этот код. Задача была — загрузить vm большим куском бессмысленной работы, и посмотреть, как быстро он справится… С hipe и без.
Тут не ставилась цель получить по настоящему вывод десяти строк со значением числа фибоначчи от 40 как можно скорей, если бы это было так, я бы проще посчитал это число один раз, и вывел 10 раз на экран. Да и промежуточные результаты бы хранил, что дало бы выигрыш намного больший, чем хвостовая рекурсия.
Вы знаете, при всем уважении, сравнивать на разных машинах не имеет смысла. Хотя, конечно, я уверен, ява должна работать быстрее чем эрланг на этом тесте.
56 секунд «без» и 20 секунд «с» hipe. То есть по крайней мере на простых тестах выигрыш очень заметен.
Кстати, аналогичный тест на ocaml дал 9 сек, на go — 13 сек, на lisp (sbcl) — 32 сек, на питоне 9 мин 46 сек, на перле 27 мин 56 сек.
Понятно, что это тест просто «навскидку, по ковбойски» однако дает определенные представления о скорострельности виртуальной машины.
То есть — hipe дает прирост скорости, и erlang не такой уж и медленный. Конечно, он медленнее компилируемых, однако для vm его производительность вполне на уровне.
Отилчно. Давайте проясним позиции. Я утверждаю, что я не знаю (есть они, нет их). В утверждаете что их нет (Бритва оккама, тайных обществ нет). Все правильно?
С циклом разработки — До того как начинать искать баги, надо предполагать что они есть. Или могут быть. Поиск багов может доказать их наличие. (Но по вашей логике их даже искать не надо. )
В случае с мировыми центрами — можно доказать что они есть (если поймать их за одно место, или они сами себя проявят). Но невозможно
доказать что их нет. Поэтому утверждать что их нет — это насилие над здравым смыслом… Эдакое «двоемыслие». Эклектика, прикрываемая рассужденими об Оккаме.
А вы не в курсе про формальные методы доказательства корректности программ? :-) Тогда вам к Дейкстре. Их редко применяют, они крайне сложны и требуют хорошей подготовки.
Но они есть.
Что же касается «вы будете отлаживать баг, про существование которого вы не знаете» — то до того момента, как он обнаружен, я действительно не знаю о его существовании. Потому что если бы знал, я бы его просто не совершил.
Кромк того, я ничего не могу сказать (как я уже писал) про мировые центры вляиния, но тайные общества таки есть.
Потому что есть факты, когда определенные тайные общества были разгромлены в противостоянии с силовыми структурами. «Навскидку» могу напомнить Лико Джелли с ложей П2.
Ни у Вас, ни у меня, ни у большинства людей тут нет достоверной информации, как устроено общество. Есть ли такие мировый центры влияния, нет ли их, Если есть то один или несколько, и т.д.
Поэтому любое утворждение, что они есть или что их нет — это всего лишь фантазия. И утверждение, что их нет имеет ровно ту же ценность, как и утверждение, что они есть.
У детей есть такая особенность психики — они не терпят неопределенности. Если они чего-то не знают, они просто придумывают ответ. И у многих взрослых это свойство к сожалению остается.
Правильный ответ тут — не хватает информации для обоснованного суждения.
ваше утверрждение противоречит здравому смыслу. И если я утверждаю, что у вас нет здравого смысла, то я по вашей логике даже обосновывать этого не должен. «Не надо доказывать», как вы сказали.
Научные сотрудники гнули спины над всеобщим экспериментом, демонстрирующим, что теоретически цифровую
вычислительную машину можно запрограммировать на выпуск абсолютно полноценной ежедневной газеты с заметками столь же разнообразными и содержательными, как и старинные, написанные от руки. Изнывая от скуки, сотрудники молча продирались сквозь пачки газетных вырезок — определяли жанр статей и выявляли в них стандартные переменные и постоянные.
За другими столами другие сотрудники переносили переменные и постоянные на карточки и составляли картотеку в такой логической последовательности, что теоретически вычислительная машина могла сама прокладывать себе путь от карточки к карточке и отбирать нужный материал. Как только Голдвассер с коллегами докажет истинность этой теории, из коммерческих соображений ее, без сомнения, поспешат внедрить в жизнь.
Тогда завершится стилизация современной газеты. Прервется последняя, остаточная связь прессы с рыхлым, бестолковым, склочным миром реальности.
…
Порой Голдвассер давал себе разрядку — притворялся вычислительной машиной и перебирал какой-нибудь готовый комплект карточек, соблюдая те же логические правила и делая тот же случайный отбор, что и вычислительная машина при составлении заметки.
…
Он выдвинул картотечный ящик и взял оттуда первую карточку комплекта. "По традиции", — стояло на ней. Теперь можно было осуществлять случайную выборку — тащить наугад "коронации", "помолвки", "похороны", "свадьбы", "совершеннолетия", "рождения", "смерти" и «венчания в церкви». Вчера он вытащил "похороны" и был отослан к карточке, где с гениальной простотой значилось "печальное событие". Сегодня он зажмурился, вытащил "свадьбы" и был направлен далее к карточке "событие радостное".
Далее в логической последовательности шли "свадьба мистера Икс" и "свадьба мистера Игрек", и Голдвассеру открылись на выбор варианты "не исключение" и "яркий пример". В обоих случаях напрашивалось слово "поистине". Однако, поистине, от какого варианта ни отталкивайся — от коронаций ли, рождений, смертей, — Голдвассер, явно наслаждаясь как математик, замечал, что при всей элегантности решения тут-то и попадаешь в тупик. Он помедлил на "поистине", затем почти без пауз выхватил "особенно радостное событие", "редкостный" и "видел ли кто-нибудь более прославленную молодую пару?"
Последующие выборки принесли Голдвассеру "Икс снискал (снискала) особую любовь всего народа", и пришлось к этому присоединить карточку "а Игрека английский народ явно принял уже в свое сердце".
Голдвассера удивляло и чуть-чуть тревожило, что не попалось еще слово «приятно». Однако он вытянул его со следующей карточкой: "особенно приятно, когда". Это дало ему "жених (невеста) должны..." И свободный выбор между "происходить из знатной и благородной семьи", «быть простолюдинами в наш демократический век», "быть выходцами из страны, с которой наша родина давно поддерживает самую тесную и сердечную дружбу" и "быть выходцами из страны, отношения с которой у нашей родины не всегда складывались удачно".
Сознавая, что в прошлый раз он на редкость талантливо распорядился словом «приятно», Голдвассер теперь нарочно вытянул его еще раз. "Приятно также", — стояло на карточке, а за ней без задержки последовало
"помнить" и "что Икс и Игрек — не только громкие имена, но жизнерадостный молодой человек и прелестная молодая женщина".
Голдвассер зажмурился, перед тем как тащить следующую карточку. На ней оказались слова "в наши дни, когда". Он призадумался, выбрать ли "вошло в моду глумиться над традиционной моралью брака и семейной жизни" или "вышло из моды глумиться над традиционной моралью брака и семейной жизни". Решил, что второй вариант по форме ближе к пышности, присущей стилю барокко. Вытащил еще одну "приятно", но сочтя, что три раза подряд — на один раз больше, чем нужно даже для прекрасного, непревзойденного слова «приятно», он смошенничал и обменял карточку на "полагается, чтобы" за которой так же верно, как ночь за днем, наступило "пожелаем им счастья", и развлечение закончилось.
«Эксперты считают, что система идентификации пользователей в дальнейшем будет применяться для предоставления функции максимально персонализированного поиска для каждого отдельно взятого пользователя. Ну, и конечно, для показа максимально персонализированной рекламы.»
Все равно непонятно. Что в имени тебе моем? Почему скажем e-mail от того же гмейла не годится для «максимально персонализированной» рекламы?
… а древние люди в племенах вообще умели обходиться без столиц.
Чем более развита страна, тем более серьезные требования предъявляются к столицам. Перекиньте сейчас правительство в неподготовленную местность и вся его деятельность остановится на долгое время. И так то… не блещет, а тут вообще коллапс произойдет.
Тут не ставилась цель получить по настоящему вывод десяти строк со значением числа фибоначчи от 40 как можно скорей, если бы это было так, я бы проще посчитал это число один раз, и вывел 10 раз на экран. Да и промежуточные результаты бы хранил, что дало бы выигрыш намного больший, чем хвостовая рекурсия.
-module(fib).
-export([fib/1,test/0]).
fib(0) ->
0;
fib(1) ->
1;
fib(N) -> fib(N-1)+fib(N-2).
test() ->
test(10,40).
test(0,_) -> ok;
test(I,N) ->
io:format("fib ~w = ~w ~n",[N,fib(N)]),
test(I-1,N).
И смотрим результаты с и без hipe:
Eshell V5.8.4 (abort with ^G)
1> c(fib).
{ok,fib}
2> timer:tc(fib,test,[]).
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
{56356860,ok}
3> c(fib,[native]).
{ok,fib}
4> timer:tc(fib,test,[]).
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
fib 40 = 102334155
{20368048,ok}
56 секунд «без» и 20 секунд «с» hipe. То есть по крайней мере на простых тестах выигрыш очень заметен.
Кстати, аналогичный тест на ocaml дал 9 сек, на go — 13 сек, на lisp (sbcl) — 32 сек, на питоне 9 мин 46 сек, на перле 27 мин 56 сек.
Понятно, что это тест просто «навскидку, по ковбойски» однако дает определенные представления о скорострельности виртуальной машины.
То есть — hipe дает прирост скорости, и erlang не такой уж и медленный. Конечно, он медленнее компилируемых, однако для vm его производительность вполне на уровне.
С циклом разработки — До того как начинать искать баги, надо предполагать что они есть. Или могут быть. Поиск багов может доказать их наличие. (Но по вашей логике их даже искать не надо. )
В случае с мировыми центрами — можно доказать что они есть (если поймать их за одно место, или они сами себя проявят). Но невозможно
доказать что их нет. Поэтому утверждать что их нет — это насилие над здравым смыслом… Эдакое «двоемыслие». Эклектика, прикрываемая рассужденими об Оккаме.
И да, кстати. о Поппере я тоже в курсе.
Но они есть.
Что же касается «вы будете отлаживать баг, про существование которого вы не знаете» — то до того момента, как он обнаружен, я действительно не знаю о его существовании. Потому что если бы знал, я бы его просто не совершил.
Кромк того, я ничего не могу сказать (как я уже писал) про мировые центры вляиния, но тайные общества таки есть.
Потому что есть факты, когда определенные тайные общества были разгромлены в противостоянии с силовыми структурами. «Навскидку» могу напомнить Лико Джелли с ложей П2.
Кто то должен доказать вам, что у вас есть баг в программе, прежде чем вы просто начнете делать юнит тесты?
Ни у Вас, ни у меня, ни у большинства людей тут нет достоверной информации, как устроено общество. Есть ли такие мировый центры влияния, нет ли их, Если есть то один или несколько, и т.д.
Поэтому любое утворждение, что они есть или что их нет — это всего лишь фантазия. И утверждение, что их нет имеет ровно ту же ценность, как и утверждение, что они есть.
У детей есть такая особенность психики — они не терпят неопределенности. Если они чего-то не знают, они просто придумывают ответ. И у многих взрослых это свойство к сожалению остается.
Правильный ответ тут — не хватает информации для обоснованного суждения.
Научные сотрудники гнули спины над всеобщим экспериментом, демонстрирующим, что теоретически цифровую
вычислительную машину можно запрограммировать на выпуск абсолютно полноценной ежедневной газеты с заметками столь же разнообразными и содержательными, как и старинные, написанные от руки. Изнывая от скуки, сотрудники молча продирались сквозь пачки газетных вырезок — определяли жанр статей и выявляли в них стандартные переменные и постоянные.
За другими столами другие сотрудники переносили переменные и постоянные на карточки и составляли картотеку в такой логической последовательности, что теоретически вычислительная машина могла сама прокладывать себе путь от карточки к карточке и отбирать нужный материал. Как только Голдвассер с коллегами докажет истинность этой теории, из коммерческих соображений ее, без сомнения, поспешат внедрить в жизнь.
Тогда завершится стилизация современной газеты. Прервется последняя, остаточная связь прессы с рыхлым, бестолковым, склочным миром реальности.
…
Порой Голдвассер давал себе разрядку — притворялся вычислительной машиной и перебирал какой-нибудь готовый комплект карточек, соблюдая те же логические правила и делая тот же случайный отбор, что и вычислительная машина при составлении заметки.
…
Он выдвинул картотечный ящик и взял оттуда первую карточку комплекта. "По традиции", — стояло на ней. Теперь можно было осуществлять случайную выборку — тащить наугад "коронации", "помолвки", "похороны", "свадьбы", "совершеннолетия", "рождения", "смерти" и «венчания в церкви». Вчера он вытащил "похороны" и был отослан к карточке, где с гениальной простотой значилось "печальное событие". Сегодня он зажмурился, вытащил "свадьбы" и был направлен далее к карточке "событие радостное".
Далее в логической последовательности шли "свадьба мистера Икс" и "свадьба мистера Игрек", и Голдвассеру открылись на выбор варианты "не исключение" и "яркий пример". В обоих случаях напрашивалось слово "поистине". Однако, поистине, от какого варианта ни отталкивайся — от коронаций ли, рождений, смертей, — Голдвассер, явно наслаждаясь как математик, замечал, что при всей элегантности решения тут-то и попадаешь в тупик. Он помедлил на "поистине", затем почти без пауз выхватил "особенно радостное событие", "редкостный" и "видел ли кто-нибудь более прославленную молодую пару?"
Последующие выборки принесли Голдвассеру "Икс снискал (снискала) особую любовь всего народа", и пришлось к этому присоединить карточку "а Игрека английский народ явно принял уже в свое сердце".
Голдвассера удивляло и чуть-чуть тревожило, что не попалось еще слово «приятно». Однако он вытянул его со следующей карточкой: "особенно приятно, когда". Это дало ему "жених (невеста) должны..." И свободный выбор между "происходить из знатной и благородной семьи", «быть простолюдинами в наш демократический век», "быть выходцами из страны, с которой наша родина давно поддерживает самую тесную и сердечную дружбу" и "быть выходцами из страны, отношения с которой у нашей родины не всегда складывались удачно".
Сознавая, что в прошлый раз он на редкость талантливо распорядился словом «приятно», Голдвассер теперь нарочно вытянул его еще раз. "Приятно также", — стояло на карточке, а за ней без задержки последовало
"помнить" и "что Икс и Игрек — не только громкие имена, но жизнерадостный молодой человек и прелестная молодая женщина".
Голдвассер зажмурился, перед тем как тащить следующую карточку. На ней оказались слова "в наши дни, когда". Он призадумался, выбрать ли "вошло в моду глумиться над традиционной моралью брака и семейной жизни" или "вышло из моды глумиться над традиционной моралью брака и семейной жизни". Решил, что второй вариант по форме ближе к пышности, присущей стилю барокко. Вытащил еще одну "приятно", но сочтя, что три раза подряд — на один раз больше, чем нужно даже для прекрасного, непревзойденного слова «приятно», он смошенничал и обменял карточку на "полагается, чтобы" за которой так же верно, как ночь за днем, наступило "пожелаем им счастья", и развлечение закончилось.
Все равно непонятно. Что в имени тебе моем? Почему скажем e-mail от того же гмейла не годится для «максимально персонализированной» рекламы?
Чем более развита страна, тем более серьезные требования предъявляются к столицам. Перекиньте сейчас правительство в неподготовленную местность и вся его деятельность остановится на долгое время. И так то… не блещет, а тут вообще коллапс произойдет.