http://orafaq.com/utilities/sqlformatter.htm -- easy to use web-based formatter
  ( http://orafaq.com/cgi-bin/sqlformat/pp/utilities/sqlformatter.tpl )
http://www.sqlinform.com/ -- another one, quite similar
http://psti.equinoxbase.com/cgi-bin/handler.pl -- maybe more complex; has a downloadable version too


Ackermann's function, memo-ized using PL/SQL