Curly-bracket languages