yeah I guess it isn't left recursive.
On a similar assignment I once got a comment that my grammar: "I claim that this grammar is unambigious ``` ::= | U ::= | ++ ::= | ( )| * ::= [a-z]``` I was told that, this is wrong because: The problem with being left-recursive is that it's impossible to choose between the rule and the * rule. This means a parser would need a lookahead as long as the length of the input string to know which rule to 'unfold."