SMS: Semigroups and formal languages