Many applications can use one of the Teradata SQL preprocessors and thus be shielded from the details of the CLIv2 interface. Applications coded in languages for which Teradata does not provide a preprocessor, or applications requiring features not provided by the preprocessor, call CLIv2 directly.