Результаты поиска по запросу "tail-recursion"
рекурсивные функции Эрланга - это не просто goto?
Просто чтобы получить это прямо в моей голове. Рассмотрим этот пример немного кода Erlang: test() -> receive {From, whatever} -> %% do something test(); {From, somethingelse} -> %% do something else test(); end.Разве тест () не ...
iPhone dev - executeSelector: withObject: afterDelay или NSTimer?
Чтобы повторить вызов метода (или отправить сообщение, я думаю, соответствующий термин) каждыйx секунд, лучше ли использовать NSTimer (запланированный NSTimerTimerWithTimeInterval: target: selector: userInfo: repeats :) или чтобы метод рекурсивно ...
Scala рекурсия против цикла: вопросы производительности и времени выполнения
Я написал наивный тестовый стенд для измерения производительности трех видов факторной реализации: на основе цикла, не хвостовой рекурсии и хвостовой рекурсии. Удивительно для меняхудшие показатели были циклическими (ожидалось, что «while» будет ...
Переполнение стека от рекурсивного вызова функции в Лиспе
Я учу Лисп из книги Конрада Барского "Земля Лисп". Теперь я столкнулся с моим первым камнем преткновения, где автор говорит: Вызывать себя таким образом не только разрешено в Лиспе, но часто настоятельно рекомендуется после показа следующего ...
Сгенерировать код операции хвостового вызова
Из любопытства я пытался сгенерировать код операции хвостового вызова, используя C #. Фибиначи прост, поэтому мой пример c # выглядит так: private static void Main(string[] args) { Console.WriteLine(Fib(int.MaxValue, 0)); } public static int ...
Оценка списка выражений Postfix
Я написал программу для рекурсивной оценки выражения после исправления в прологе из списка выражений. Например, дан следующий список: [+,1,2]Он должен возвращать 3. Они построили мой предикат так, как он рекурсивно вызывает себя, пока не ...
Поддерживает ли Scala оптимизацию хвостовой рекурсии?
Поддерживает ли Scala оптимизацию хвостовой рекурсии?
Почему скаляр не может оптимизировать хвостовую рекурсию в определенных сценариях?
Почему не скалярScala [http://en.wikipedia.org/wiki/Scala_%28programming_language%29]компилятор) оптимизировать хвостовую рекурсию? Вызовы кода и компилятора, демонстрирующие это: > cat foo.scala class Foo { def ifak(n: Int, acc: Int):Int = { ...
Производительность пролога и тип рекурсии
Я играл сpermutation в паре программ и наткнулся на этот маленький эксперимент: Метод перестановки 1: permute([], []). permute([X|Rest], L) :- permute(Rest, L1), select(X, L, L1). Метод перестановки 2: permute([], []). permute(L, [P | P1]) :- ...
Scala: рекурсия хвостовой вставки дерева со сложной структурой
Я создаю дерево пользовательских объектов в Scala, и мой метод вставки создает переполнение стека, потому что это не хвостовая рекурсия. Однако я не могу понять, как сделать его рекурсивным. Связанные примеры, которые я видел, используют ...