8
ответов

Хорошее объяснение “Combinators” (Для не математики)

Кто-либо получил хорошее объяснение "combinators" (Y-combinators и т.д. а НЕ компания)? Я ищу один для практического программиста, который понимает рекурсию и функции высшего порядка, но...
вопрос задан: 2 March 2018 01:47
5
ответов

Может сам вызов функции лямбды рекурсивно в Python?

Регулярная функция может содержать вызов к себе в его определении, без проблем. Я не могу выяснить, как сделать это с функцией лямбды, хотя по простой причине, что функция лямбды не имеет никакого имени...
вопрос задан: 8 January 2010 00:22
4
ответа

Y-Combinator практический пример

Я читал немного в последнее время о функциональном программировании, и я пробую к grok Y-Combinator. Я понимаю, что можно использовать Y-Combinator для эффективной реализации рекурсии на языке...
вопрос задан: 15 May 2009 15:54
3
ответа

Как я определяю y-combinator без “rec, которому позволяют”?

Почти во всех примерах y-combinator на языках типа ML записан как это: позвольте rec y f x = f (y f) x, позволяют факториалу = y (забава f-> функция 0-> 1 | n-> n * f (n - 1)) Это работает как...
вопрос задан: 4 January 2010 09:23
2
ответа

Комбинаторы неподвижной точки в C++

Я интересуюсь фактическими примерами использования комбинаторов неподвижной точки (таких как y-combinator в C++. Вы когда-либо использовали комбинатор неподвижной точки с яйцом или связываете в реальном живом коде? Я нашел это...
вопрос задан: 30 May 2017 09:33
1
ответ

Использование комбинатора неподвижной точки? Почему переполнение стека здесь?

Я смущен чем-то. Я хотел генерировать пример (в Clojure) демонстрирующий, как комбинатор неподвижной точки мог использоваться для оценки фиксированной точки последовательности это математически...
вопрос задан: 7 July 2019 00:04
1
ответ

Почему тип этой функции (a -> a) -> a?

Почему тип этой функции (a -> a) -> a? Прелюдия> пусть y f = f (y f) Прелюдия>: t y y :: (t -> t) -> t Разве это не должен быть бесконечный / рекурсивный тип? Я собирался попытаться поместить в ...
вопрос задан: 18 January 2012 23:20
0
ответов

Как использовать исправление и как оно работает?

Меня немного смутила документация по исправлению (хотя я думаю, что теперь понимаю, что оно должно делать), поэтому я посмотрел в исходном коде. Это сбило меня с толку: fix :: (a -> a) -> a ...
вопрос задан: 15 July 2019 05:05
0
ответов

Преобразование функции, которая вычисляет фиксированную точку

У меня есть функция, которая вычисляет фиксированную точку в терминах итерации: EquityClosure :: (Ord a) => Relation a -> Relation a эквивалентностьClosure = fst. List.head - "гарантировано" ...
вопрос задан: 7 July 2019 00:35
0
ответов

Обсуждение комбинатора Y в «Маленьком интригане»

Итак, я провел много времени, читая и перечитывая -окончание главы 9 в «Маленьком интригане», где аппликативное комбинатор Y разработан для функция длины. Я думаю, мое замешательство закипает...
вопрос задан: 29 December 2017 10:02
0
ответов

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

Есть ли комбинатор с фиксированной точкой для создания кортежей взаимно рекурсивных функций? Т.е. я ищу что-то вроде Y-Combinator, но который принимает несколько «рекурсивных» * функций и будет ...
вопрос задан: 14 November 2014 14:19
0
ответов

Y Combinator на Haskell

Можно ли написать Y Combinator на Haskell? Похоже, у него будет бесконечно рекурсивный тип. Y :: f -> b -> c, где f :: (f -> b -> c) или что-то в этом роде. Даже простой ...
вопрос задан: 12 October 2012 13:53
0
ответов

Комбинатор Y: некоторые функции не имеют фиксированных точек

Статья Википедии о комбинаторе Y предоставляет следующую реализацию комбинатора Y на JavaScript: function Y(f) { return ( (function (x) { return f(function (v) {...
вопрос задан: 14 June 2012 15:21
0
ответов

Scala: (Int, Int) => Int не соответствует (Int, Int) => Int

Я пытаюсь использовать y-комбинатор для определения gcd в scala: object Main { def y[A,B]( f : (A => B) => A => B ) : A => B = f(y(f)) def gcd = y[(Int,Int),Int]( (g) => (x,y) => if (...
вопрос задан: 20 January 2012 23:32
0
ответов

Рекурсивные функции, переполнение стека и Y-комбинаторы

У меня есть рекурсивная функция (на C #), которую мне нужно вызвать около 800 миллионов раз; это, очевидно, обычно приводит к переполнению стека примерно после 900-го вызова. Я разослал это нескольким ...
вопрос задан: 2 December 2011 07:10
0
ответов

Комбинатор Y, бесконечные типы и анонимная рекурсия в Haskell

Я пытался решить задачу максимальной суммы подпоследовательностей и придумал аккуратное решение msss :: (Ord a, Num а) => [а] -> а msss = f 0 0 f gmax _ [] = gmax f gmax lmax (x: xs) = let g = ...
вопрос задан: 29 November 2011 09:26
0
ответов

Реализовал ли я Y-комбинатор, используя динамический C #, и если нет, то что это?

Мой мозг, кажется, находится в мазохистском режиме, поэтому после того, как он утонул в этом, этом и этом, он захотел возиться с некоторыми DIY в C #. Я придумал следующее, которое, как мне кажется, не является Y -...
вопрос задан: 6 October 2011 04:49
0
ответов

, экспрессирующие Y в течение срока лыжно-комбинаторов в JavaScript

Я протел с коминкаторами в JavaScript и гордился ( Надеюсь, чтобы получить S для работы, когда я наткнулся на Википедию, говоря: «У комбинатора Y можно выразить в лыжном исчислении как: y = ...
вопрос задан: 23 September 2011 20:06
0
ответов

Y-комбинатор в D?

Я пытаюсь лучше изучить Y-комбинатор (я вроде как понимаю его на схеме) и реализовать его в D 2.0, и я с треском проваливается: auto fact = delegate (uint delegate (uint) recurse) {...
вопрос задан: 4 August 2011 15:51
0
ответов

Работает ли «Анонимная рекурсия» в .NET? Это работает в Mono

. Я зашел на этот сайт несколько дней назад в разделе «Анонимная рекурсия в C #». Суть статьи заключается в том, что следующий код не будет работать на C #: Func fib = n => п> 1? fib (n - ...
вопрос задан: 30 March 2011 17:18
0
ответов

Alternative Y combinator definition

I've spent some time wrapping my head around the Y combinator lately, and I've found that it is usually defined (more or less) as follows (this is in C#, but the language of choice isn't important): ...
вопрос задан: 21 January 2011 20:51
0
ответов

Y Combinator в схеме с помощью Define

Чтобы узнать, что такое комбинатор с фиксированной точкой и для чего он используется, я написал свой собственный. Но вместо того, чтобы писать его со строго анонимными функциями, как в примере из Википедии, я просто использовал define: (define ...
вопрос задан: 14 January 2011 03:06
0
ответов

Применение Y-Combinator к рекурсивной функции с двумя аргументами в Clojure?

Выполнение Y-Combinator для функции отдельного аргумента, такой как факториал или fibonacci в Clojure хорошо документируется: http://rosettacode.org/wiki/Y_combinator#Clojure Мой вопрос - как дела это...
вопрос задан: 14 August 2010 11:30