CAL allows you to add functions to your arsenal that aren't included in the program itself. For example, some versions of Cakewalk do not reset controller values when you load a new song. Using CAL, you can create a macro-like subroutine to handle this reset for you. In other cases, the generic MIDI effects included with SONAR may not be precise enough for your needs. CAL can add more precision, or even a different approach to parameters such as changing note lengths.
Advanced control of tempo through CAL is possible; CAL routines are available for download to create arpeggios automatically. Creating tremolo and echo effects with MIDI data is possible, but requires much data to be created in the way of precisely scaled extra notes. A CAL routine can make this a simple operation, made easier as CAL routines can be created by recording commands and mouse clicks to memorize tasks you perform often.
Often, imported MIDI song files will have all drum instruments on one track assigned to MIDI channel 10. A CAL routine can be created to break out each note, and therefore each drum instrument, to its own track. Other routines can perform functions such as deleting duplicate notes or removing controller information automatically, saving the need to go through pages of events.
Because CAL works with data in MIDI format, it can not only control your Cakewalk or SONAR program, it can communicate with your MIDI equipment as well. CAL routines can be used to set parameters for different pieces of hardware, or address how your hardware interfaces with MIDI performance data. This is particularly handy when addressing MIDI functions on sound cards, which have capability, but no physical controls for interface.