code: def first_return():
  	
  	walk = randwalk() >> drop(1) >> takewhile(lambda v: v != Origin) >> list
  	return len(walk)
docs: Generate a random walk and return its length upto the moment
  	that the walker first returns to the origin.
  
  	It is mathematically provable that the walker will eventually return,
  	meaning that the function call will halt, although it may take
  	a *very* long time and your computer may run out of memory!
  	Thus, try this interactively only.