Wolfram Language & System 10.4 (2016)|Legacy Documentation

This is documentation for an earlier version of the Wolfram Language.View current documentation (Version 11.2)


generates a list of the results of applying f repeatedly, starting with expr, and continuing until applying test to the result no longer yields True.

supplies the most recent m results as arguments for test at each step.

supplies all results so far as arguments for test at each step.

applies f at most max times.


  • The last element of the list returned by NestWhileList[f,expr,test] is always an expression to which applying test does not yield True.
  • NestWhileList[f,expr,test,m] at each step evaluates . It does not put the results in a list.
  • The are given in the order they are generated, with the most recent coming last.
  • NestWhileList[f,expr,test,m] does not start applying test until at least m results have been generated. »
  • NestWhileList[f,expr,test,{mmin,m}] does not start applying test until at least results have been generated. At each step it then supplies as arguments to test as many recent results as possible, up to a maximum of m. »
  • NestWhileList[f,expr,test,m] is equivalent to NestWhileList[f,expr,test,{m,m}]. »
  • NestWhileList[f,expr,UnsameQ,2] is equivalent to FixedPointList[f,expr]. »
  • NestWhileList[f,expr,test,All] is equivalent to NestWhileList[f,expr,test,{1,Infinity}]. »
  • NestWhileList[f,expr,UnsameQ,All] goes on applying f until the same result first appears more than once.
  • NestWhileList[f,expr,test,m,max,n] applies f an extra n times, appending the results to the list generated. »
  • NestWhileList[f,expr,test,m,max,-n] drops the last n elements from the list generated. »
Introduced in 1999