You can define as many as you want but the more you have, the slower the highlighting. The 2 parameters to exp are simply its name, and the expression being defined. There are 6 parameters to the map command. The first is the name of the map. This will be important later.
Styles are nothing more than integers which index styles assigned to text.
If the list of ending expressions is non-empty, then e93 searches for text which matches any of the ending expressions. The text between the start and ending expression is colored in the between-style. Finally, the text of the matching ending expression is colored in the end-style. If the ending expression list is empty, then e93 ends the mapping immediately after the text which matches the start expression. It tells which mappings are in effect when no other mapping is in effect.