title: Are there any tools that can determine perform code analysis for Big-O complexity?
body: <p>I haven't seen anything out there, and I suspect the difficulty with defining "n" since for generally for analyzing a complex function there'd be more than just one or two variables for defining.  </p>
  
  <p>There are analysis tools for cyclomatic complexity but are there ones for time (and/or space) complexity?  If so which ones, if not, why not?  Is it infeasible? Impossible?  Someone just hasn't gotten around to it?</p>
  
  <p>Ideally there'd be something like overall complexity for the application (defining different possible "n"s) as well as for each method in the app</p>
  
  <p>Edit: So it seems like an exact solution is impossible because of the <a href="http://en.wikipedia.org/wiki/Halting_problem" rel="noreferrer">Halting Problem</a> however, is some kind of heuristic approximation possible?  I realize that for practical purposes a good profiler will give much more useful information, but it seems like an interesting problem.</p>
  
  <p>Also, how about one that calculates for a certain subset of programs?</p>