[Tutor] Infinite recursion or too big a problem?

VanL van@lindbergs.org
Wed, 04 Jul 2001 03:55:24 -0600


Upn rereading my post, it is not clear what I am calling.  It is this 
function (the last writtent):

>
> getAllLogfiles = lambda dirname: reduce(concatenate, [], 
> getLogfiles(getFileList(abs_path(dirname))) +
> map(getAllLogfiles, map(abs_path, getDirectories(getFileList(dirname)))))
>
Sample editor session:

 >>> import Pylog2
 >>> lst = Pylog2.getAllLogfiles('.')

[time goes by ...]
[snip a bunch of errors identical to the top one listed below ...]

  File "Pylog2.py", line 34, in <lambda>
    getAllLogfiles = lambda dirname: reduce(concatenate, [], 
getLogfiles(getFileList(abs_path(dirname))) + map(getAllLogfiles, 
map(abs_path, getDirectories(getFileList(dirname)))))
  File "Pylog2.py", line 34, in <lambda>
    getAllLogfiles = lambda dirname: reduce(concatenate, [], 
getLogfiles(getFileList(abs_path(dirname))) + map(getAllLogfiles, 
map(abs_path, getDirectories(getFileList(dirname)))))
  File "Pylog2.py", line 33, in <lambda>
    getLogfiles = lambda fileobjs: filter(isLogfile, fileobjs)
  File "Pylog2.py", line 27, in <lambda>
    isLogfile = lambda filename: (is_file(filename)) and (filename == 'log')
  File "/usr/local/lib/python2.0/posixpath.py", line 195, in isfile
    return stat.S_ISREG(st[stat.ST_MODE])
  File "/usr/local/lib/python2.0/stat.py", line 55, in S_ISREG
    return S_IFMT(mode) == S_IFREG
RuntimeError: Maximum recursion depth exceeded
 >>>