%
% A real example of a case statement.
% Don't worry if you don't understand the code just yet.
%
loop
	exit when t > 1
	case eval of
	    label DirectTM:
		ComputeTM(t, basis, TM)
		EvaluateSpline(TM, pt, col)

	    label DirectMP:
		px := t*t*t*A(0).x + t*t*A(1).x + t*A(2).x + A(3).x
		py := t*t*t*A(0).y + t*t*A(1).y + t*A(2).y + A(3).y
		PlotPoint(px,py,col)

	    label Horner:
		px := (((A(0).x*t) + A(1).x)*t + A(2).x)*t + A(3).x
		py := (((A(0).y*t) + A(1).y)*t + A(2).y)*t + A(3).y
		PlotPoint(px,py,col)

	    label ForwardDiff:
		PlotPoint(px,py,col)
		px   += D.x
		py   += D.y
		D.x  += DD.x
		D.y  += DD.y
		DD.x += DDD.x
		DD.y += DDD.y
	end case

	t += dt

end loop
