Abstract
Functional languages are popular both in the academic world and in the related industry. Standard ML (SML) is a strong typed functional programming language with numerous good features. Unfortunately, SML compilers do not provide simple and straightforward testing environments for programmers especially for new SML learners. In this paper, we present the design and implementation of T-SML, a tracing tool we have developed for the Standard ML's implementation SML/NJ. T-SML is a testing tool based on tracing strategies for SML. By using this tool, SML programs can be transformed into augmented SML programs that contain added SML code used for various tracing purposes. These augmented programs can be executed to produce trace outputs that can be read by SML programmers to analyze the correctness of their original SML programs.