functional-programming- все статьи тега
Что, если таковые имеются, не так с этим подходом к декларативному вводу-выводу
Я точно не знаю, насколько это относится к "программированию", а не к "проектированию языка программирования". Но проблема вот в чем: Скажем, для простоты у нас есть два "специальных" списка/массивы/векторы/то, что мы просто называем "портами" для простоты, один называется stdIn, а другой stdOut. Они концептуально представляют соответственно весь пользовательский ввод, заданный программе в течение срока действия программы Все выходные данные, записанные на терминал в течение программа В ...
Сортировка списка с помощью стандартной библиотечной функции OCaml
Я изучаю OCaml и выполняю различные упражнения по упорядочиванию данных. Я хотел бы понять, как использовать стандартный список библиотек для упорядочивания Например, я хотел бы отсортировать этот массив, используя следующие функции [94; 50; 6; 7; 8; 8] List.sort List.stable_sort List.fast_sort List.unique_sort Каков синтаксис для этого ? ...
Использование частичных функций в Scala-как это работает?
Я новичок в Scala, я использую 2.9.1, и я пытаюсь понять, как использовать частичные функции. У меня есть базовое понимание функций Карри, и я знаю, что частичные функции подобны функциям Карри, где они только 2nary или что-то подобное. Как вы можете заметить, я немного позеленел в этом. Похоже, что в некоторых случаях, таких как фильтрация XML, возможность частичных функций была бы очень выгодна, поэтому я надеюсь получить лучшее понимание того, как использовать их. У меня есть функция, кот ...
Как лучше всего использовать логическое программирование?
под логическим программированием я подразумеваю субпарадигму декларативных языков программирования. Не путайте этот вопрос с вопросом "какие проблемы вы можете решить с помощью if-then-else?" Такой язык, как пролог, очень увлекателен, и его стоит изучать ради изучения, но я должен задаться вопросом, какой класс реальных проблем лучше всего выражается и решается таким языком. Есть ли лучшие языки? Существует ли логическое программирование под другим именем в более модном программировании язы ...
Хорошие ресурсы по использованию функционального программирования в разработке игр? [закрытый]
Я довольно новичок в этой парадигме функционального программирования, но пока она мне нравится. Поскольку я занимаюсь разработкой игр, я хочу попробовать это в написании некоторых игр в чисто функциональном стиле программирования. Я не возражаю против языка-будь то Erlang, Haskell, Lisp или даже Ruby (я обнаружил, что он поддерживает функциональные черты программирования). Ну, очевидно, что для изучения функционального программирования (на самом деле, чего угодно) лучшим советом было бы просто ...
Неизменяемый набор in.NET
Имеет ли .NET BCL неизменяемый тип набора? Я программирую на функциональном диалекте C# и хотел бы сделать что-то вроде new Set.UnionWith(A).UnionWith(B).UnionWith(C) Но лучшее, что я могу найти, - это HashSet.UnionWith, что потребует следующей последовательности вызовов: HashSet composite = new HashSet(); composite.UnionWith(A); composite.UnionWith(B); composite.UnionWith(C); Это использование очень непрозрачно с точки зрения референции, что затрудняет оптимизацию и понимание. Есть ли ...
Функциональное программирование против объектно-ориентированного программирования [закрыто]
до сих пор я в основном подвергался программированию OO и с нетерпением жду изучения функционального языка. Мои вопросы: когда вы выбираете функциональное программирование над объектно-ориентированным? каковы типичные определения проблем, где функциональное программирование является лучшим выбором? ...
Как может существовать функция времени в функциональном программировании?
Я должен признать, что я не знаю много о функциональном программировании. Я читал об этом здесь и там, и поэтому узнал, что в функциональном программировании функция возвращает один и тот же выход для одного и того же входа, независимо от того, сколько раз функция вызывается. Это точно так же, как математическая функция, которая вычисляет один и тот же выход для одного и того же значения входных параметров, которые участвуют в выражении функции. например, рассмотрим это: f(x,y) = x*x + y; // I ...
Эффективность чисто функционального программирования
кто-нибудь знает, что такое худшее возможное асимптотическое замедление, которое может произойти при программировании чисто функционально, а не императивно (т. е. позволяя побочные эффекты)? уточнение из комментария itowlson: есть ли проблема, для которой самый известный неразрушающий алгоритм асимптотически хуже, чем самый известный разрушительный алгоритм, и если да, то на сколько? ...
Какова доходность Scala?
Я понимаю выход Рубина и питона. Что делает выход Scala? ...
Почему функциональные языки? [закрытый]
Я вижу много говорить здесь о функциональных языках и прочее. Почему вы используете его над "традиционным" языком? Что они делают лучше? Чем они хуже? Что такое идеальное функциональное приложение для программирования? ...
Что такое ссылочная прозрачность?
Что означает термин ссылочная прозрачность в смысле? Я слышал, что это описывается как "это означает, что вы можете заменить равные равными", но это кажется неадекватным объяснением. ...
Что такое "подъем" в Scala?
иногда, когда я читаю статьи в экосистеме Scala, я читаю термин "подъем" / "поднятый". К сожалению, не объясняется, что именно это означает. Я провел некоторое исследование, и кажется, что лифтинг имеет какое-то отношение к функциональным значениям или что-то в этом роде, но я не смог найти текст, который объясняет, что такое лифтинг на самом деле в дружественной для начинающих форме. есть дополнительная путаница через лифт рамки которые имеют подниматься внутри его имя, но это не помогает отв ...
Что такое функтор в функциональном программировании?
Я сталкивался с термином "функтор" несколько раз, читая различные статьи по функциональному программированию, но авторы обычно предполагают, что читатель уже понимает этот термин. Оглядываясь вокруг в интернете предоставил либо чрезмерно технические описания (см. статья в Википедии) или невероятно расплывчатые описания (см. раздел о Функторах на этом ocaml-учебник веб-сайт). может кто-то любезно определить термин, объяснить его использование, и, возможно, приведите пример того, как создаются и ...
разница между foldLeft и reduceLeft в Scala
я узнал основную разницу между foldLeft и reduceLeft метод использовать-foldleft: начальное значение должно быть вынесено reduceLeft: берет первый элемент коллекции в качестве начального значения бросает исключение, если коллекция пуста есть ли разница ? любая конкретная причина иметь два метода с аналогичная функциональность? ...
Почему побочные эффекты моделируются как монады в Haskell?
может ли кто - нибудь дать некоторые указания на то, почему нечистые вычисления в Haskell моделируются как монады? Я имею в виду, что монада-это просто интерфейс с 4 операциями, так что было рассуждение о моделировании побочных эффектов в нем? ...
Какие инструменты существуют для функционального программирования в C?
Я много думал в последнее время о том, как заниматься функциональным программированием на C (не C++). Очевидно, что C является процедурным языком и на самом деле не поддерживает функциональное программирование изначально. существуют ли какие-либо расширения компилятора/языка, которые добавляют некоторые конструкции функционального программирования к языку? НКУ предусматривает вложенные функции как расширение языка; вложенные функции могут обращаться к переменным из родительского кадра стека, ...
Руководство для начинающих в Хаскелл? [закрытый]
Я искал приличный гид по Хаскеллу в течение некоторого времени, но не смог найти тот, который кажется достаточно интересным для чтения и/или имеет смысл. У меня был предыдущий контакт с Хаскеллом несколько лет назад, но я не могу вспомнить много об этом. Я помню "Ага!"- чувство было невероятным, когда я, наконец, получил его, и это было действительно весело играть, поэтому я ищу, чтобы заново открыть потерянное искусство Хаскелла. Я знаком с Ruby и его функциональные программные трюки, поэтому ...
Что такое "подъем" в Haskell?
Я не понимаю, что такое "лифтинг". Должен ли я сначала понять монады, прежде чем понять, что такое "лифт"? (Я тоже совершенно не знаю о монадах:) или кто-то может объяснить мне это простыми словами? ...
Как обновить элемент внутри списка с помощью ImmutableJS?
вот что сказали официальные документы updateIn(keyPath: Array<any>, updater: (value: any) => any): List<T> updateIn(keyPath: Array<any>, notSetValue: any, updater: (value: any) => any): List<T> updateIn(keyPath: Iterable<any, any>, updater: (value: any) => any): List<T> updateIn(keyPath: Iterable<any, any>, notSetValue: any, updater: (value: any) => any): List<T> обычный веб-разработчик (а не функциональный программист) этого не пойм ...