Language:
Free Online Dictionary|3Dict

unfoldfold

Source : Free On-Line Dictionary of Computing

unfold/fold
     
        A {program transformation} where a {recursive} call to a
        function is {unfold}ed to an instance of the function's body
        and then later an instance of the function's body is replaced
        by a call.  E.g.
     
        	sumdouble l = sum (double l)
     
        	double l = case l of
        	           []   -> []
        		   x:xs -> 2*x + double xs
     
        	==> (unfold double)
     
        	sumdouble l = sum (case l of
        		           []   -> []
        			   x:xs -> 2*x : double xs)
     
        	==> (distribute over case)
     
        	sumdouble l = case l of
        		      []   -> sum []
        		      x:xs -> sum (2*x : double xs)
     
         	==> (unfold sum)
     
        	sumdouble l = case l of
        		      []   -> 0
        		      x:xs -> 2*x + sum (double xs)
     
         	==> (fold sumdouble)
     
        	sumdouble l = case l of
        		      []   -> 0
        		      x:xs -> 2*x + sumdouble xs
     
        (1994-11-03)
Sort by alphabet : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z