Ho scritto il parser che legge l'input della stringa. Che funzioni. Ho anche scritto il valutatore che sputa il risultato. Ma c'è un piccolo dettaglio che ho problemi nell'implementazione. Guardate il seguente esempio:Valutazione di un linguaggio di tipo matematico piccolo che supporta una variabile
+(sw+(2,2),sr)
Il sw costrutto di questa piccola lingua è supponiamo di valutare "+ (2,2)" e riporlo da qualche parte. Il costrutto sr leggerebbe questa area di memoria. L'intera espressione su sarebbe valutata a 8.
I miei pensieri su di esso sarebbero di utilizzare un parametro aggiuntivo per la funzione eval, che memorizza il risultato. Ma non riesco a vederlo funzionare. Nota Sono nuovo di haskell, quindi sii gentile. Oh, questo è compito. Quindi non darmi una soluzione, dammi un suggerimento.
Grazie! Non ho usato espressioni difficili. Ma l'ho fatto funzionare. – Algific
Ottimo lavoro nel rispondere a una domanda di compiti a casa nel modo giusto. – Davorak