Sorry, bad url, here is the Fibonacci Sequence url

http://www.jsoftware.com/jwiki/Essays/Fibonacci%20Sequence

Kip

Sent from my iPad


On Feb 11, 2013, at 7:54 AM, km <[email protected]> wrote:

> This essay Fibonacci Sequence by Roger gives examples of double recursion and 
> single recursion
> 
> http://www.jsoftware.com/docs/help701/dictionary/dmcapdot.htm
> 
> Kip Murray
> 
> Sent from my iPad
> 
> 
> On Feb 11, 2013, at 7:40 AM, Don Guinn <[email protected]> wrote:
> 
>> Also, the x and y in explicit definitions are local names so are unique
>> from x and y of a calling explicit definition. That includes recursion.
>> 
>> On Mon, Feb 11, 2013 at 6:31 AM, km <[email protected]> wrote:
>> 
>>> Perhaps this Vocabulary entry for Memo M. will help
>>> 
>>> http://www.jsoftware.com/docs/help701/dictionary/dmcapdot.htm
>>> 
>>> There is also Self Reference $:
>>> 
>>> http://www.jsoftware.com/docs/help701/dictionary/dmcapdot.htm
>>> 
>>> Kip Murray
>>> 
>>> Sent from my iPad
>>> 
>>> 
>>> On Feb 11, 2013, at 7:04 AM, Alex Giannakopoulos <[email protected]>
>>> wrote:
>>> 
>>>> Are there any resources on recursive programming in J?  Couldn't find
>>> much
>>>> by searching.
>>>> I would particularly like to know about scoping, and also so-called free
>>>> variables.
>>>> 
>>>> It seems to me that the enforced naming of variables as 'x' and 'y' might
>>>> cause problems in nested functions, necessitating awkward renaming and
>>>> copying.
>>>> 
>>>> I will give a little example here (my apologies to those unfamiliar with
>>>> Scheme.)
>>>> I am trying to write a routine that will return ALL the factors of a
>>>> number, not just the prime ones.
>>>> I do this by using an auxiliary routine that takes the number to factor
>>> and
>>>> a list of numbers still to combine.
>>>> 
>>>> ;; function (unique numlist) corresponds to J's ~.
>>>> ;; function (remel alist elem) corresponds to J's   [ }.~ [: >: i.
>>>> ;; function (primefactors n) corresponds to J's   q:
>>>> 
>>>> (define (allfactors n) (af n (primefators n))
>>>> 
>>>> (define (af num divisors)
>>>> (if (null? divisors) (list num)
>>>>    (let ((uniquefactors (unique divisors)))
>>>>         (flatten
>>>>         (cons num
>>>>               (map (lambda(x) (af (/ num x) (remel divisors x)))
>>>>                    uniquefactors))))))
>>>> 
>>>> Now I tried to express this in J, but can't even get to first base,
>>> because
>>>> of the scoping problems I mentioned.
>>>> I realise that recursion is not the primary mode for programming J, and a
>>>> good solution may instead use something like running totals (\), but for
>>>> the time being I am stuck.
>>>> Any suggestions gratefully received.
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to