structures and languages