Re[13]: ocaml срочно!!!
От: Аноним  
Дата: 18.05.07 11:07
Оценка:
G>>Разве Немерле даёт что-то новое, чего не давал бы какой-нибудь другой язык? Он только комбинирует в себе кучу разных идей...
VD>Вот их комбинацию и дает.

Комбинация идей — будет "новым подходом к программированию" ?

Если человек может выбирать любой язык для своих проектов — то имеет смысл выбрать (и изучить) язык просто ради личного удобства.
А вот если нет — то изучение языка — это только самообьразование, изучение новых подходов а не самого языка.
И тогда зачем дополнительно изучать комбинацию, если в том языке, который используется, ее все равно не применишь, а идеи отдельно уже изучены ?


VD>Ответом в той же манере будет: А зачем изучать Лисп?

Он же написал, что он ужде шугается — т.е. он уже в какой-то мере изучил Лисп. А Немерл будет совсем новым.
Re[14]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 11:15
Оценка: -1
Здравствуйте, deniok, Вы писали:

D>Сравнивать явовские интерфейсы и классы типов Хаскелла — всё равно, что сравнивать макросы C и Лиспа. Инструменты радикально разной мощности.


Если убрать понты в корман, то окажется, что ничего особо революционного там нет.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[13]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 11:15
Оценка: -2 :)))
Здравствуйте, lomeo, Вы писали:

G>>Разве Немерле даёт что-то новое, чего не давал бы какой-нибудь другой язык? Он только комбинирует в себе кучу разных идей...


L>Вообще это вопрос личный, язык как женщина — мне не даёт, тебе не даёт, Владу даёт.


Значит с женищинами у вас та же история. Ну, оно и понятно .
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 11:15
Оценка:
Здравствуйте, geniepro, Вы писали:

G>Просто Лисп — классика. Полувековая история компьютинга, всё-таки... ;о)


Копйка тоже классика, но на сегодня ездить на ней можно только от большой нужды.

G>Нет-нет, Влад, это не ко мне. Я не тот Аноним 673, который шугается от Немерле... :о)


Может быть. Когда вас там сортировать то?

G>Мне Немерле любопытен, хотя и не настолько, что бы скачивать исходники компилятора из SVN или где они там хранятся, и билдить их вручную.


Вообще-то если на машине стоит Тортила, то нужно забить пукть к репозиторию (http://nemerle.org/svn/nemerle/trunk). Нажать ОК, и дождаться пока исходники скачаются. Далее выполрить BuildAndReg-1-phase.cmd и через две минуты на машине будет компилятор. С интеграцией, правад, сложнее. Но как правильно заметил
Автор: Mirrorer
Дата: 18.05.07
товарищь Mirrorer есть CTP-версия. Она отстает от компилятора максимум на 2 недели.

G>А та версия, что я скачал с их сайта (в виде инсталлятора), не может откомпилировать твой вариант Ack на Немерле...


Ну, уж это ты загибаешь. Я Акермана компилировал
Автор: VladD2
Дата: 29.01.06
более года назад.

В прочем, ссылку тебе дали. Так что обсуждать уже точно нечего.

G>Когда, кстати, немерлевцы обновят инсталлятор компилятора?


Скажу по сикрету, что теперь это делает товаридь Блудов. Он сделал единый инсталятор для компилятора и Интеграции со студией. CTP которых переодически выкладываются в соответствующем формуе.

G> А иначе о каком промышленном применении может идти речь, когда такие несовместимости даже в простейших случаях?


Что у тебя там за косят вылез я не знаю. Акерман должен компилироваться даже компилятором трехлетней давности. Правда похоже, что за последнее время Немерле отстал в области компиляции акерманов. F# это делает лучше .

VD2>> Я все же справился с разворотом рекусрии на C#, так что думю, что он сейчас станет победятлом :


G>Боюсь, эта версия стала дятлом, а не победятлом... :о)) Она работает ещё медленнее (немного), чем оригинальная...


Что то не то говоришь. Возможно в дебаге компилируешь или запускаешь из под студии, а не отдельно или по Ctrl+F5. Или все зависит от процессора. У меня F#-ная версия показвает .29 сек, а Шарповская .20. Код почти идентичный, только у Шарповской версии размер стека 8. Может из-за выравнивания все дело происходит. Вообще — это конечно не тест, а идиотизм. Тут уже ветер за форточкой на результат влияет (выравнивания и т.п.).

G>Как мне известно, в этой функции нельзя обойтись одними итерациями, не сэмулировав при этом стек и "рекурсию для бедных"...


А ты код то внимтельно посмотрел? Развернута концевая рекурисия (заменена на цикл в соответствии с классикой жанра). Обычный рекурсивный вызов оставлен на месте.

VD2>> Короче крутость ленивых языков не подтвердилась.


G>О какой крутости ленивости шла речь? Я лишь заявил, что ленивость можно побороть анализатором строгости или ручным форсированием выполнения...


Кто утверждал, что на том же акермане все будут порваны. А вот у меня C# лидер в желтой майке, только надо рекурсию ручками развернуть.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 11:15
Оценка:
Здравствуйте, geniepro, Вы писали:

G>Я просто хочу сказать, что динамичность или ленивость — не непреодолимые преграды, их можно обойти хорошими компиляторами.


Однозначные, однозначные. Причем если ленивость еще теоретически преодолима, а вот дикамика — это приговор. Там где удастся сделать вывод типов можно о чем-то говорить, но на то она и динамика, что сделать полный вывод типов невозможно принципиально.

G>Например, Stalin (компилер для Scheme) для той же функции Аккермана генерирует код в три раза более быстрый, чем GCC


Это бред. GCC конечно не лучший компилятор, но до 5 раз это нереально. И опят же фокус с акрерманом исключительно в концевой рекурсии. Используй привденный мной императивный вариант и все функциональные языки в лучшем случае покажут похожий результат.

Вот только Акерманы и Фибоначи — это вырожденные случае примитивщины по совместительству являющиеся юнит-тестами для компиляторов функциональных языков. Так что их результаты не показательны. Вот тут был неплохой тест — Альфа Блэнд. Как я помню единственный функциональный язык приблизившийся к С++ по скрости был Клин и то после полной аннотации типов всего что можно и после устранения всех причуд компилятора. Код при этом был хуже чем на С++. Лично у меня даже сомнений не осталось после этого.

G> (правда, сразу признаюсь, я сам этого не проверял, мне показывали бенчмарки)...


Еще раз повторяю, что пдобные тесты начинают зависить от ветра за форточкой. Выравнивание чуть по другому и уже приемущество на треть. Тут как крата ляжет. Если же компилятор специально на алгоритм оптимизировлся, то и говорить не о чем. Вседа можно подобрать последовательность инструкций которые некоторый процессор исполнит идиально. Алгоритмически быстрее этого варианта думаю сделать невозможно.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[17]: ocaml срочно!!!
От: Lloyd Россия  
Дата: 18.05.07 11:37
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Уверен?


VD>Попробуй присвой переменную до цикла, измени ее значение в цикле, и используй его после цикла.


Как это сделать покажешь?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[14]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 11:44
Оценка: +1
Здравствуйте, <Аноним>, Вы писали:

А>Комбинация идей — будет "новым подходом к программированию" ?


Радикально новых идей нет лет 30. Все что придумано развитие тех времен. Не программировать же из-за этого на Симуле и Лиспе тех времен?

А>Если человек может выбирать любой язык для своих проектов — то имеет смысл выбрать (и изучить) язык просто ради личного удобства.


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

VD>>Ответом в той же манере будет: А зачем изучать Лисп?

А>Он же написал, что он ужде шугается — т.е. он уже в какой-то мере изучил Лисп. А Немерл будет совсем новым.

Ну, а что шагать, то в пролое? Ежу понятно, что у Лиспа окромя макросов ничего нет. Ну, так теперь не только Лисп ими обладает.

Вот и выглядит странно это заявление. Больше похоже на откровенный снабизм или фанатизм. Из серии "Васик это для ламеров".
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: ocaml срочно!!!
От: aka50 Россия  
Дата: 18.05.07 11:54
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, <Аноним>, Вы писали:


VD>Вот и выглядит странно это заявление. Больше похоже на откровенный снабизм или фанатизм. Из серии "Васик это для ламеров".


Всем известно лисп и асм впереди планеты всей
http://lukewelling.com/wp-content/uploads/2006/08/programmer%20hierarchy.pdf

ЗЫ: это шутка, памидорами не бросать
Re[8]: ocaml срочно!!!
От: Аноним  
Дата: 18.05.07 12:09
Оценка:
VD> Сгенерировать более быстрый код они не в силах приципиально. Тут могут быть ... или сравнение разных алгоритмов.

Если в разных языках естественно выглядят разные алгоритмы — почему это не записать в достоинства языку и чем это делает сравнение бессмысленным ?
Возражение странное.
Re[10]: ocaml срочно!!!
От: Mamut Швеция http://dmitriid.com
Дата: 18.05.07 12:09
Оценка: :)
A>>а почему, собственно, все так шугаются от него в сторону Nemerle или Хаскеля?

G>Ну прям так сразу и все. Грамотные пацаны и девчонки шугаются в сторону Erlang!


Ну, дык, я зря, что ли, "Декларативное программирование" заспамливаю сообщениями об Эрланге?


dmitriid.comGitHubLinkedIn
Re[2]: ocaml + mediawiki
От: Mamut Швеция http://dmitriid.com
Дата: 18.05.07 12:18
Оценка:
А>Ещё вспомнил одно всем известное применение OCaml: в Википедии он формулки рисует.

Подробнее об этом здесь: http://meta.wikimedia.org/wiki/Enable_TeX

Вот, собственно, и сама программа: http://files.rsdn.ru/9088/math.zip (выковырял из свой вики )


dmitriid.comGitHubLinkedIn
Re[11]: ocaml срочно!!!
От: deniok Россия  
Дата: 18.05.07 12:32
Оценка: :))) :)
Здравствуйте, Mamut, Вы писали:

A>>>а почему, собственно, все так шугаются от него в сторону Nemerle или Хаскеля?


G>>Ну прям так сразу и все. Грамотные пацаны и девчонки шугаются в сторону Erlang!


M>Ну, дык, я зря, что ли, "Декларативное программирование" заспамливаю сообщениями об Эрланге?


Ты это, поосторожнее. А то кончите как Nemerle
Re[9]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 12:36
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Если в разных языках естественно выглядят разные алгоритмы — почему это не записать в достоинства языку и чем это делает сравнение бессмысленным ?


Записывай, но не надо сюда производительность прилетать.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[18]: ocaml срочно!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.05.07 12:36
Оценка: -1 :))
Здравствуйте, Lloyd, Вы писали:

VD>>Попробуй присвой переменную до цикла, измени ее значение в цикле, и используй его после цикла.


L>Как это сделать покажешь?


Не, ну, это вы же ученые. Вы и думайте. Мое дело предложение сделать. (с)
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: ocaml срочно!!!
От: Аноним  
Дата: 18.05.07 12:53
Оценка:
А>>Комбинация идей — будет "новым подходом к программированию" ?

VD>Радикально новых идей нет лет 30. Все что придумано развитие тех времен. Не программировать же из-за этого на Симуле и Лиспе тех времен?


Заметь, geniepro говорит "изучать", а ты говоришь "программировать". Не факт что у него етсь такая возможность.

А>>Если человек может выбирать любой язык для своих проектов — то имеет смысл выбрать (и изучить) язык просто ради личного удобства.


VD>Если человеку не совсем плевать на сам проект, то выбирать нужно наиболее удобный язык (как в прочем и вообще инфраструктуру). Такой, чтобы максимально облегчал решение задачи.


Если ты управляешь проектом и наьираешь под свой вкус программеров — то да. А есл наоборот.
Сам же говорил, кажется, что в серьезном проекте за самопальную макро-библиотеку в Лиспе ли, Немерле ли надо наказывать?
Вот и представь что ты ведёшь проект, выбрал для него, допустим Nemerle. А твой подчиненный выбрал для своей части общего проекта — Scala. Потому что eмy так удобнее и максимально облегает ему решение своей задачи.
Re[11]: ocaml срочно!!!
От: geniepro http://geniepro.livejournal.com/
Дата: 18.05.07 17:18
Оценка:
Здравствуйте, Mamut, Вы писали:

A>>> а почему, собственно, все так шугаются от него в сторону Nemerle или Хаскеля?


G>> Ну прям так сразу и все. Грамотные пацаны и девчонки шугаются в сторону Erlang!


M> Ну, дык, я зря, что ли, "Декларативное программирование" заспамливаю сообщениями об Эрланге?


Кстати, а что там за история была с запретом на использование Эрланга в Эриксоне, что привело к уходу из Эриксона почти всех создателей Эрланга?
Re[12]: ocaml срочно!!!
От: geniepro http://geniepro.livejournal.com/
Дата: 18.05.07 17:19
Оценка:
Здравствуйте, VladD2, Вы писали:

VD2> А ты код то внимтельно посмотрел? Развернута концевая рекурисия (заменена на цикл в соответствии с классикой жанра). Обычный рекурсивный вызов оставлен на месте.


VD2> Кто утверждал, что на том же акермане все будут порваны. А вот у меня C# лидер в желтой майке, только надо рекурсию ручками развернуть.


В-общем, ждём Трурля. Он меня когда-то убедил, что функцию Аккермана нельзя реализовать с хвостовой рекурсией или в итеративном виде без имитации рекурсии...

VD2> Вот только Акерманы и Фибоначи — это вырожденные случае примитивщины по совместительству являющиеся юнит-тестами для компиляторов функциональных языков.


Так я сразу оговорился, что пример искусственный. За уши можно любое опровержение чему угодно притянуть...
Re[15]: ocaml срочно!!!
От: geniepro http://geniepro.livejournal.com/
Дата: 18.05.07 17:21
Оценка: +1
Здравствуйте, VladD2, Вы писали:

VD>Вот и выглядит странно это заявление. Больше похоже на откровенный снабизм или фанатизм. Из серии "Васик это для ламеров".


Однако мы сильно отклонились от темы. Вряд ли наш фанатизм поможет Настасье с её дипломной работой...

Предлагаю такую тему для Анастасии:

Регулярно проводятся различные соревнования между программистами, в частности — ICFP, на которых разрешено использовать любые языки программирования. Вот, например, описание одного из финалов в презентации "Industrial Functional Programming", стр. 27 и далее.
Участие принимало более 800 команд со всего мира, было принято 39 решений, на следующих языках:
C/C++      7        Mercury      1    
Clean      1        ML           9
Dylan      1        Perl         2
Eiffel     1        Python       1
Haskell    6        Scheme       2
Java       6        Smalltalk    2

В результате первые четыре места заняли: (трассировщик лучей)

1) O’Caml
2) O’Caml
3) Haskell
4) Mercury

C/C++ и прочие императивные языки оказались в глубоком пролёте...

В следующих соревнованиях места распределились так: (программа компрессии HTML страниц)

1) Haskell
2) Dylan
3) O'Caml, C (видимо, часть программы на O'Caml, часть — на С)

В прошлогодних (ICFP-2006) соревнованиях первые места выглядели так: (вапще куча разных крутых задач)

1) Haskell
2) O'Caml
3) Haskell

Короче, вывод для диплома предлагаю такой:

Функциональные языки позволяют сэкономить кучу времени при создании алгоритмически сложных программ в условиях жёсткого дефицита времени и потратить это сэкономленное на кодировании и отладке программ время на поиск наиболее оптимальных алгоритмов — самых быстрых, самых качественных и т.д...
Re[16]: ocaml срочно!!!
От: anastassia  
Дата: 18.05.07 19:54
Оценка:
Здравствуйте, geniepro, Вы писали:

G>Предлагаю такую тему для Анастасии:


G>Регулярно проводятся различные соревнования между программистами, в частности — ICFP, на которых разрешено использовать любые языки программирования.

G>Короче, вывод для диплома предлагаю такой:

G>Функциональные языки позволяют сэкономить кучу времени при создании алгоритмически сложных программ в условиях жёсткого дефицита времени и потратить это сэкономленное на кодировании и отладке программ время на поиск наиболее оптимальных алгоритмов — самых быстрых, самых качественных и т.д...


ого, уже и вывод придумали! как тут у вас хорошо, я только с интерпретатором борюсь, а вы мне уже результат подогнали)) спасибо )))

А еще вопросик, более старые версии окамла где поискать можно?годика так 2000-2002...
Re[17]: ocaml срочно!!!
От: palm mute  
Дата: 18.05.07 21:30
Оценка:
Здравствуйте, anastassia, Вы писали:

A>А еще вопросик, более старые версии окамла где поискать можно?годика так 2000-2002...

http://caml.inria.fr/pub/distrib/
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.