A Thought on Specification Reflection by Yoonsik Cheon, Yoshiki Hayashi, and Gary T. Leavens Abstract In programming languages, reflection is the ability to discover and manipulate, at runtime, information about program entities, such as objects. We present our thoughts on extending the concept of reflection to behavioral interface specifications. We explain the benefits of such specification reflection, and discuss implementation approaches, support tools, and research problems and issues in this area. Keywords: Specification reflection, specification introspection, reflective specification execution, specification object, specification class object, JML language. 2001 CR Categories: D.2.1 [Software Engineering] Requirements/Specifications -- languages, JML; D.2.4 [Software Engineering] Software/Program Verification -- assertion checkers, class invariants, formal methods, programming by contract; F.3.1 [Logics and Meanings of Programs] Specifying and Verifying and Reasoning about Programs -- Assertions, invariants, pre- and post-conditions, specification techniques. Submitted for publication.