Nel frattempo... credo di dover ampliare il concetto di stato di rebulator (molto modestamente così ho battezzato la calcolatrice!!!).
Ad oggi essa ha i seguenti stati:
normal = stato di accensione, nella quale essa aspetta i comandi. nessun'operazione è stata ancora richiesta.
op= è lo stato delle operazioni aritmetiche: se premo il più passa in stato plus aspettando il secondo operando e così via.
error= non accetta comandi ed è ferma fintantochè non si resetta.
standby=stato di fermo non di errore. è lo stato che assume la macchina dopo aver premuto enter.
Ampliare gli stati della macchina perchè? Ad oggi gli stati gestiscono alla grande le operazioni binarie (la macchina entra ad esempio in stato plus se il primo operando ha senso aspettando così il secondo operando). Di fatto però essa non gestisce direttamente i singoli operandi se non come espressioni dello stato in cui si trova. Questo è a mio avviso un modello valido ma (e qui viene il ma). Un operatore unario come il +/- (che serve a cambiare il segno del singolo operando) o viene gestito con una gestione del singolo operando (ad esempio inserendo uno stato primo operando-secondo operando) così che si sa a quale operando ci si sta riferendo, oppure come un ulteriore "stato" inteso non come stato della macchine ma come attributo dell'operando. Pro e contro? Il primo caso introduce l'operando come ente a sè con tutti gli innegabili vantaggi (altri operatori unari, anche se impropriamente detti, sono la gestione della memoria o meglio la radice quadrata, la percentuale), ma richiede una riprogettazione di tutto. Il secondo caso è quello più logico perchè in realtà il segno è un attributo del singolo numero e non qualcosa che giustifichi un'introduzione di "nuove vie". filosofia. ed è tardi per la filosofia.
Nessun commento:
Posta un commento