In order to compute the FIRST and FOLLOW sets, you need an augmented grammar, meaning that it needs a start nonterminal with a single rule. I have added that, start nonterminal S'. So the grammar is
S' -> E $ |
E -> A |
E -> L |
A -> n |
A -> i |
L -> ( S ) |
S -> E , S |
S -> E |
FIRST(E) = {i, n, (} |
FIRST(A) = {i, n} |
FIRST(L) = {(} |
FIRST(S) = {i, n, (} |
FOLLOW(E) = {$, comma, )} |
FOLLOW(A) = {$, comma, )} |
FOLLOW(L) = {$, comma, )} |
FOLLOW(S) = {)} |