Вопросы с тегом «functional-programming»

31
Что бы вы сделали, если бы ваш клиент потребовал от вас не использовать объектно-ориентированное программирование?

Я пишу программу для имитации активности муравьев в сетке (PDF). Муравей может передвигаться, собирать вещи и бросать их. Проблема в том, что действие муравьев и положение каждого муравья можно легко отслеживать с помощью атрибутов класса (и мы можем легко создать множество экземпляров таких...

31
Асинхронное программирование на функциональных языках

Я в основном программист на C / C ++, а это значит, что большая часть моего опыта связана с процедурными и объектно-ориентированными парадигмами. Однако, как известно многим программистам на C ++, C ++ с годами сместил акцент на стиль функционального esque, завершившийся, наконец, добавлением лямбд...

30
Как сторонники функционального программирования ответят на это утверждение в Code Complete?

На странице 839 второго издания Стив Макконнелл обсуждает все способы, с помощью которых программисты могут «преодолевать сложности» в больших программах. Его советы завершаются этим утверждением: «Объектно-ориентированное программирование обеспечивает уровень абстракции, который применяется...

30
Почему полезна концепция ленивых вычислений?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 7 лет назад . Кажется, что ленивая оценка выражений может привести к тому, что программист потеряет контроль над порядком выполнения кода. У меня возникают проблемы...

30
Учитывая табун лошадей, как мне определить среднюю длину рога всех единорогов?

Приведенный выше вопрос является абстрактным примером распространенной проблемы, с которой я сталкиваюсь в унаследованном коде, или, точнее, проблем, возникших в результате предыдущих попыток решить эту проблему. Я могу вспомнить хотя бы один метод .NET Framework, предназначенный для решения этой...

30
Haskell против Erlang для веб-сервисов

Я рассчитываю начать экспериментальный проект с использованием функционального языка и пытаюсь выбрать между Эрлангом и Хаскеллом, и у обоих есть некоторые моменты, которые мне действительно нравятся. Мне нравится сильная система типов и чистота Хаскелла. У меня есть ощущение, что это облегчит...

30
Почему мне не нужен ORM на таком функциональном языке, как Scala?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 4 года назад . Мне интересно, могу ли я переключиться с Java на Scala в проекте Spring + Hibernate, чтобы воспользоваться некоторыми функциями Scala, такими как...

30
Является ли программирование в философии UNIX таким же, как функциональное программирование?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Среда программирования UNIX (классический текст) утверждает, что подход UNIX к программированию заключается в создании небольших, четко определенных...

30
Почему дискриминационные союзы связаны с функциональным программированием?

За многие годы ОО-программирования я понял, что такое дискриминационные союзы, но я никогда не пропускал их. Недавно я занимался некоторым функциональным программированием на C #, и теперь я продолжаю желать, чтобы они у меня были. Это сбивает с толку меня, потому что, на первый взгляд, концепция...

29
Разные способы увидеть монаду

Во время изучения Haskell я столкнулся с множеством учебных пособий, в которых пытался объяснить, что такое монады и почему они важны в Haskell. Каждый из них использовал аналогии, чтобы было легче понять смысл. В конце концов, я получил 3 разных взгляда на то, что такое монада: Вид 1: Монада как...

29
Является ли возвратный тип (только) -полиморфизм в Haskell хорошей вещью?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Одна вещь, с которой я никогда не соглашался в Haskell, это то, как вы можете иметь полиморфные константы и функции, тип возврата которых не может быть...

28
Делает ли изучение функционального языка лучшим программистом ООП? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 5 лет назад . Как программист на Java / C # / C ++ я много слышал о функциональных языках, но...

28
Почему ключевое слово rec необходимо в F #?

В F # необходимо использовать recключевое слово. В Haskell нет необходимости явно указывать, является ли данная функция рекурсивной или нет. Учитывая роль рекурсии в функциональном программировании, дизайн F # кажется мне довольно странным. Это хорошее решение для разработки языка или оно...

27
Игнорирует ли функциональное программирование преимущества, полученные от «Критериев, которые будут использоваться при декомпозиции систем на модули» (скрытие данных)?

Есть классическая статья под названием «Критерии для использования при декомпозиции систем на модули», которую я только что прочитал впервые. Это имеет смысл для меня и, вероятно, является одной из тех статей, на которых основывается ООП. Его вывод: Мы попытались продемонстрировать на этих...

27
Делает ли перехват / выброс исключений нечистым в противном случае чистым методом?

Следующие примеры кода предоставляют контекст для моего вопроса. Класс комнаты инициализируется с делегатом. В первой реализации класса Room нет защиты от делегатов, которые генерируют исключения. Такие исключения будут пузыриться до свойства North, где оценивается делегат (примечание: метод Main...

26
Как реализовать ветвление и привязку в функциональном языке программирования?

Я пытаюсь написать поиск ветвей и границ на множестве всех функций f: D -> R, где размер домена мал (| D | ~ 20), а диапазон намного больше (| R | ~ 2 ^ 20 ). Изначально я придумал следующее решение. (builder (domain range condlist partial-map) (let ((passed? (check condlist partial-map))) (cond...

26
Какие достойные веб-фреймворки существуют для функционального программирования? [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

26
Как преобразовать ОО-программу в функциональную?

У меня возникают трудности с поиском ресурсов для написания программ в функциональном стиле. Самая сложная тема, которую я мог найти в Интернете, - это использование структурной типизации для сокращения иерархии классов; большинство просто имеют дело с тем, как использовать карту / сложение /...

26
Как чисто функциональный язык программирования обходится без операторов присваивания?

Читая знаменитый SICP, я обнаружил, что авторы, скорее всего, неохотно представляют инструкцию присваивания Схеме в главе 3. Я читаю текст и понимаю, почему они так думают. Поскольку Scheme является первым функциональным языком программирования, о котором я когда-либо знаю, я удивлен, что некоторые...

26
Является ли функциональное программирование надмножеством объектно-ориентированного?

Чем более функциональное программирование я выполняю, тем больше я чувствую, что оно добавляет дополнительный уровень абстракции, который похож на то, как слой лука - все охватывает предыдущие уровни. Я не знаю, так ли это, поэтому, исходя из принципов ООП, с которыми я работал годами, кто-нибудь...