Запитання з тегом «functional-programming»

Функціональне програмування - парадигма, яка намагається вирішити обчислювальні задачі за допомогою ланцюгової оцінки функцій, вихід яких визначається їх введеннями, а не станом програми. У цьому стилі програмування побічні ефекти та дані, що змінюються, застаріли і зазвичай суворо відокремлені.

3
Підхід до функціонального програмування для спрощеної гри за допомогою Scala та LWJGL
Я, імперативний програміст Java, хотів би зрозуміти, як створити просту версію Space Invaders на основі принципів дизайну функціонального програмування (зокрема, Референтна прозорість). Однак, кожного разу, коли я намагаюся придумати дизайн, я втрачаюсь у багнюці крайньої незмінності, тієї самої змінності, яку уникають пуристи з функціонального програмування. Як спроба вивчити функціональне програмування, …

2
Обхід для виконання операцій над подвійно пов'язаними або круговими структурами даних мовами з незмінними даними
Я хотів би дізнатися, як скласти графіки та виконувати деякі локальні операції над ними в Haskell, але питання не є специфічним для Haskell, і замість графіків ми можемо розглядати подвійно пов'язані списки. Запитання: Який би був ідіоматичний чи рекомендований спосіб впровадження подвійно пов'язаного списку (або іншої подвійно пов'язаної чи кругової …

2
Чи є якась причина, щоб не використовувати Необов’язковий як аргумент методу у тому випадку, коли вам відомо, що аргумент є чимось, що може бути або не потрібно?
З Java 8 я переглядаю все нові й нові статті про використання опції / необов’язково. Я розумію, що вони намагаються представляти, і бачу багато прикладів їх використання як повернення. Однак те, що я не бачу, - це те, що вони використовуються як аргументи методу / функції на мовах, у яких …

3
Побічні ефекти, що порушують референтну прозорість
Функціональне програмування в Scala пояснює вплив побічного ефекту на порушення референтної прозорості: побічний ефект, який передбачає деяке порушення референсної прозорості. Я прочитав частину SICP , в якій обговорюється використання „моделі заміщення” для оцінки програми. Оскільки я приблизно розумію модель заміщення з референтною прозорістю (RT), ви можете декомпонувати функцію в її …

1
Чому більшість анонімних функцій не може бути скомпільовано JIT і ніколи не буде оптимізовано?
Я щойно прочитав https://techfindings.one/archives/2652 про функціональне програмування і натрапив на це: анонімні функції часто не можуть бути складені JIT і ніколи не будуть оптимізовані Хтось може мені пояснити, чому це так?

2
Збереження держави без призначення
Я вивчаю функціональне програмування, і у мене виникають проблеми з розумінням того, як реалізуються окремі сценарії без використання завдання. Наступна проста проблема в значній мірі підсумовує мою плутанину. Напишіть програму, яка отримує події про зміни в заданій структурі даних і випромінює події, коли ця структура даних досягає певного стану. Тож …

5
Чи може чисто функціональне рішення цієї проблеми бути таким же чистим, як і імператив?
У мене вправа в Python наступна: поліном задається у вигляді множини коефіцієнтів, таким чином, що потужність визначається за показниками, наприклад: (9,7,5) означає 9 + 7 * x + 5 * x ^ 2 написати функцію для обчислення її значення для заданого x Оскільки я останнім часом займаюся функціональним програмуванням, я …

4
Як називається функціональний аргумент у складці
У функції вищого порядку скласти / зменшити, як називається функціональний аргумент, якщо такий є? Я працюю над монадичною бібліотекою обробки табличних таблиць, де рядки складаються для отримання простих аналізів (наприклад, знаходження мінімального, максимального, середнього значення стовпця). Тому я шукаю звучну назву для аргументу foldфункції та будь-яке ім'я, яке добре знайшло …

2
Де ми ставимо код «запитуючи світ», коли ми розмежовуємо обчислення від побічних ефектів?
Відповідно до принципу розділення команд-запитів , а також мислення в даних і DDD з презентаціями Clojure слід відокремлювати побічні ефекти (модифікуючи світ) від обчислень та рішень, щоб було легше зрозуміти і перевірити обидві частини. Це залишає без відповіді питання: де відносно кордону слід поставити "запитання світу"? З одного боку, запит …

7
Як познайомити свою команду з функціональним стилем кодування?
У мене ситуація, коли більшість людей у ​​моїй групі походять з об'єктно-орієнтованого фону програмування і мало розуміють функціональне програмування. Навіть основи, як закриття. Будь-які пропозиції щодо того, що може бути хорошим способом познайомити їх з функціональним стилем кодування? Багато кодування, яке ми робимо, можна скоротити, якщо робити функціональний спосіб для …

3
Довгий список параметрів проти списку змінних довгого стану
У книзі C ++ автор каже, що нам більше не потрібна функція з довгим списком параметрів, оскільки більшість параметрів можуть бути перетворені на змінні стану класу. З іншого боку, книга з функціональним програмуванням говорить, що змінні стану є злими, оскільки вони спричиняють побічні ефекти, які спричиняють помилки та важко паралелізувати …

4
STDOUT та його домішка
Я прочитав багато книг і статей про функціональне програмування і все ще соромлюсь, що не зможу зрозуміти напевно деяких дуже основних понять. Однією з головних ідей функціонального програмування є те, що той самий вхід завжди повинен давати однаковий вихід. Тому, скажімо, запит до бази даних чи файлу запису за визначенням …

5
Було б нормально, якби я вирішив написати всю свою Рубі так, ніби це був Haskell?
Зважаючи на те, що у Ruby є вбудовані можливості функціонування списку - зменшити, картографувати, вибрати, зібрати і т. Д. У ньому є програми, блоки та лямбдаси, і є приємна підтримка ітерації ( eachсімейство), було б поганим дизайнерським рішенням, якщо я спробую написати всі мої речі про Ruby найбільш чисто-функціональним способом? …

3
Чи є у функціональних мов програмування більше можливостей зробити оптимізацію часу компіляції?
Я читав книгу «Функціональне програмування для реального світу». Він розпочався з порівняння імперативних та функціональних мов програмування. І в ньому зазначалося, чим «значення» та «вирази» у функціональному програмуванні відрізняються від «змінних» та «функцій» імперативного програмування. З обговорення я наче розробив ідею, що - Мови функціонального програмування мають більше можливостей зробити …

6
Чи варто підібрати функціональну мову програмування?
Останнім часом мене більше турбує спосіб написання коду. Прочитавши декілька книг про дизайнерські зразки (і я впевнений у їх здійсненні, я переконався), я змінив своє мислення на інкапсуляцію того, що змінюється. Я, як правило, помічаю, що я пишу менше інтерфейсів і більше орієнтований на метод код, де я люблю переносити …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.