onstruindo um analisador (Parte
Estou criando minha própria linguagem de programação baseada em javascript (sim, é loucura, mas é apenas para aprender ...talvez). Bem, estou lendo sobre analisadores e a primeira passagem é converter a fonte de código em tokens, como:
if(x > 5)
return true;
Tokenizer para:
T_IF "if"
T_LPAREN "("
T_IDENTIFIER "x"
T_GT ">"
T_NUMBER "5"
T_RPAREN ")"
T_IDENTIFIER "return"
T_TRUE "true"
T_TERMINATOR ";"
Não sei se minha lógica está correta por enquanto. No meu analisador, é ainda melhor ou não) e traduza para ele (sim, matriz multidimensional):
T_IF "if"
T_EXPRESSION ...
T_IDENTIFIER "x"
T_GT ">"
T_NUMBER "5"
T_CLOSURE ...
T_IDENTIFIER "return"
T_TRUE "true"
Tenho algumas duvidas
É o meu caminho melhor ou pior que ooriginal way? Observe que meu código será lido e compilado (traduzido para outro idioma, como PHP), em vez de interpretado o tempo todApós o tokenizer, o que preciso fazer exatamente? Estou realmente perdido neste passe! Há algum bom tutorial para aprender como posso fazer isso?Bem, é isso. Tchau