Describir: Semigroups and formal languages