Хмм начитался форумов и всяких убеждений про то как функциональные языки это круто, как отсутствие побочных эфектов повышает эффективность, как замыкания и т.д. удобны.
В принципе да, некоторые вещи в Руби/Питон можно использовать вроде передачи блоков, лямбд, map и т.д.
В каком-нибудь С++/Java это все неудобно, поэтому обычно в коде и не используешь.
Но вот у нас был курс в инстике про функциональные языки, в окамле. Дальше упражнений про деревья и списки не пошло и в общем увидеть какие-то серьезные преимущества не удалось.
Намечается курс про субд (надо будет написать какие-то ее части), вот я подумал использовать для него что-нибудь функциональное (скажем тот же окамл).
Но вот незадача - совершенно не представляю себе как писать это все в функциональном стиле. Ведь база это какие-то большие файлы, б-деревья на диске, которые просто не вмещаются в памяти.
Если в C многие вещи будет просто сделать, скажем UPDATE, просто сделал fseek() куда нужно, заменил то что нужно и привет. Тоже самое для данных которые не вмещаются в память, существую алгоритмы и т.д., все это несложно реализовать в императивном стиле, поскакать по файлу туда-сюда, прочитать то, переписать се.
А как в функциональном стиле? Ведь это будет ужасно неэфективно. Чтобы сделать тот же самый UPDATE нужно будет прочитать файл аж до момента UPDATE рекурсивно, заменить то что нужно и следом так же рекурсивно записать.
Никаких тебе fseek()'ов и замены в файлах.
Как это все решается в том же расхваливаемом Лиспе? Или это все-таки не предметная область для функционального програмирования? А как же тогда "Common Lisp - универсальный язык" (tm) и прочее?
Нет, ну понятно, что в том же Окамле можно писать императивно, можно написать императивный код в отдельных модулях на С и т.д. но зачем тогда пихать функциональные языки в такое упражнение?
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от tailgunner
Ответ на:
комментарий
от tailgunner
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от tailgunner
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от tailgunner
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от bik
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от DonkeyHot
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от tailgunner
Ответ на:
комментарий
от dissident
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Про функциональные языки... (2017)
- Форум функциональный встраиваемый язык (2008)
- Форум [lorgoogle] Встраиваемый функциональный язык (2011)
- Форум Функциональные языки и GUI. (2009)
- Форум .NET и функциональные языки (2006)
- Форум декларативные vs функциональные языки (2005)
- Форум Что такое функциональные языки? (2005)
- Форум Новый функциональный язык FXSL (2005)
- Форум Что такое функциональные языки? (2005)
- Форум Какой язык функционального программирования выбрать? (2011)