Результаты поиска по запросу "tail-recursion"

9 ответов

рекурсивные функции Эрланга - это не просто goto?

Просто чтобы получить это прямо в моей голове. Рассмотрим этот пример немного кода Erlang: test() -> receive {From, whatever} -> %% do something test(); {From, somethingelse} -> %% do something else test(); end.Разве тест () не ...

3 ответа

iPhone dev - executeSelector: withObject: afterDelay или NSTimer?

Чтобы повторить вызов метода (или отправить сообщение, я думаю, соответствующий термин) каждыйx секунд, лучше ли использовать NSTimer (запланированный NSTimerTimerWithTimeInterval: target: selector: userInfo: repeats :) или чтобы метод рекурсивно ...

2 ответа

Scala рекурсия против цикла: вопросы производительности и времени выполнения

Я написал наивный тестовый стенд для измерения производительности трех видов факторной реализации: на основе цикла, не хвостовой рекурсии и хвостовой рекурсии. Удивительно для меняхудшие показатели были циклическими (ожидалось, что «while» будет ...

ТОП публикаций

4 ответа

Переполнение стека от рекурсивного вызова функции в Лиспе

Я учу Лисп из книги Конрада Барского "Земля Лисп". Теперь я столкнулся с моим первым камнем преткновения, где автор говорит: Вызывать себя таким образом не только разрешено в Лиспе, но часто настоятельно рекомендуется после показа следующего ...

3 ответа

Сгенерировать код операции хвостового вызова

Из любопытства я пытался сгенерировать код операции хвостового вызова, используя C #. Фибиначи прост, поэтому мой пример c # выглядит так: private static void Main(string[] args) { Console.WriteLine(Fib(int.MaxValue, 0)); } public static int ...

1 ответ

Оценка списка выражений Postfix

Я написал программу для рекурсивной оценки выражения после исправления в прологе из списка выражений. Например, дан следующий список: [+,1,2]Он должен возвращать 3. Они построили мой предикат так, как он рекурсивно вызывает себя, пока не ...

4 ответа

Поддерживает ли Scala оптимизацию хвостовой рекурсии?

Поддерживает ли Scala оптимизацию хвостовой рекурсии?

2 ответа

Почему скаляр не может оптимизировать хвостовую рекурсию в определенных сценариях?

Почему не скалярScala [http://en.wikipedia.org/wiki/Scala_%28programming_language%29]компилятор) оптимизировать хвостовую рекурсию? Вызовы кода и компилятора, демонстрирующие это: > cat foo.scala class Foo { def ifak(n: Int, acc: Int):Int = { ...

3 ответа

Производительность пролога и тип рекурсии

Я играл сpermutation в паре программ и наткнулся на этот маленький эксперимент: Метод перестановки 1: permute([], []). permute([X|Rest], L) :- permute(Rest, L1), select(X, L, L1). Метод перестановки 2: permute([], []). permute(L, [P | P1]) :- ...

1 ответ

Scala: рекурсия хвостовой вставки дерева со сложной структурой

Я создаю дерево пользовательских объектов в Scala, и мой метод вставки создает переполнение стека, потому что это не хвостовая рекурсия. Однако я не могу понять, как сделать его рекурсивным. Связанные примеры, которые я видел, используют ...