A workflow code generator for generating executable code for multi-channel
and/or multi-modal applications. The code generator may include a parser
for reading application input files and creating internal representations
of declarative statements within the input files. The code generator may
further include a model analyzer, which processes the internal model to
detect errors, perform optimization, and prepare for outputting the
result. The code generator uses a symbol or mapping table for storing
references to resources that have been used by the input application. The
code generator assigns code fragments to object patterns, resolves data
object references by referring to mapping table, and traverses the
objects and emits code assigned to the objects.