Changes between Version 8 and Version 9 of Variante1


Ignore:
Timestamp:
Jul 25, 2006, 5:24:02 PM (18 years ago)
Author:
gnappo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Variante1

    v8 v9  
    9920060725-1559 [[BR]]
    1010Si potrebbero tipizzare le liste di espressioni attualmente campi di istanza di alcune !SchemeExpression. In tal modo non avremmo necessita' di cast (generici docet). [[BR]]
    11 Tutte le SchemeExpression<Value> potrebbero avere come campo d'istanza lo scheme value associato (da istanziarsi al momento della creazione dell'espressione) anziche il valore come tipo primitivo. Attualmente gli scheme-value vengono creati solo al momento della valutazione. Se fossero creati subito il metodo prettyPrint potrebbe semplicemente riutilizzare il metodo toString insito negli scheme-valori. La soluzione e' piu' elegante anche se richiede un consumo di memoria maggiore.
     11Tutte le SchemeExpression<Value> potrebbero avere come campo d'istanza lo scheme value associato (da istanziarsi al momento della creazione dell'espressione) anziche il valore come tipo primitivo. Attualmente gli scheme-value vengono creati solo al momento della valutazione. Se fossero creati subito il metodo prettyPrint potrebbe semplicemente riutilizzare il metodo toString insito negli scheme-valori. La soluzione e' piu' elegante anche se richiede un consumo di memoria maggiore.[[BR]]
     12Nello scrivere la prettyPrint ci si accorge dell'utilita' di averne una anche per !SchemeBranch e !SchemeDefinition in quanto contenute in altre !SchemeExpression. Le soluzioni percorribili sono dunque due: la prima e' rendere !SchemeExpression sia i branch che le definition, la seconda esporre dei getter specifici che ritornano espressioni (trattasi di aggiramento). A mio parere la prima implica uno snaturamento di cio' che e' espressione quindi percorrero' la seconda strada.