Finite State Machines (FSMs) roles and classes for making conversational agents based on Domain Specific Languages (DSLs).