Several methods are known for parsing languages generated by Tree Adjoining Grammars (TAGs) in O(n 6) worst case running time. In this paper we investigate which restrictions on TAGs and TAG derivations are needed in order to lower this O(n 6) time complexity, without introducing large runtime constants, and without losing any of the generative power needed to capture the syntactic constructions in natural language that can be handled by unrestricted TAGs. In particular, we describe an algorithm for parsing a strict subclass of TAG in O(nS), and attempt to show that this subclass retains enough generative power to make it useful in the general case.