stò scrivendo un piccolo linguaggio di scripting senza pretese, ma mi interessava sapere da vioi come si potrebbe fare per gestire l'esecizione di cicli annidiati e di costrutti if/esle anch'essi annidiati...
per esempio:
se ho
while condizione:
istruzione
endwhile
premettendo che istruzione è una stringa da visualizzare, mi basta vedere se trovo la parolina while e, finchè la condizione è vera, stampare c'ò che è contenuto tra : e endwhile....
ma se all'interno di questo while ce ne fosse un altro??Come posso organizzare il mio aprser in modo da chiamare ricorsivamente l'istruzione per eseguire il ciclo?
se ad esempio ho una funzione generale per parsare, una per stampare, una per gli if ed una per il while, a rigor di logica dovrei inserire in quela while dei controlli simili a quella di parsing generale, giusto?
però nn funziona...che debba richiamare ancora l'esecuzione della funzione di parser per vedere se all'interno c'è altro codice??una mano me la dareste per favore??
Io so programmare in Python e, diciamo, in Java (da poco, ma almeno ne comprendo la sintassi) e in PHP...se qualcuno mi potesse spiegare o scrivere un esempio con quest linguaggi (o anche con uno pseudolingaggio che va bene lo stesso) ne sarei più che felice.