X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2Fmatita.txt;h=d1f44f3e651103c14bf7ecd9a3efb9d431679602;hb=f263e4ec717d5ec2e7f9c057855f8223f81baae8;hp=adf0e1cf1651cc353a24e461c926adf0b82b63c1;hpb=2d87a9eee93e86d9866120c6ae6dfe7539ee914d;p=helm.git diff --git a/helm/matita/matita.txt b/helm/matita/matita.txt index adf0e1cf1..d1f44f3e6 100644 --- a/helm/matita/matita.txt +++ b/helm/matita/matita.txt @@ -2,15 +2,83 @@ (**********************************************************************) TODO -- script outline -> Zack +- Bug: non disambigua + inductive i (x:nat) : bool \to Prop \def K : bool \to (i x true) \to (i x false). + perche' non inserisce nat nel domain di disambiguazione. Deve esserci un bug + stupido da qualche parte +- preoccupante: per + inductive i (x:nat) : bool \to Prop \def K : bool \to (i x true) \to (i x false). + noi generiamo anche i_rec e i_rect che Coq non genera (e che NON dovrebbero + essere accettati dal nostro nucleo che invece non fa una piega!!!) +- parsing contestuale (tattiche replace, change e forse altre) +- assiomi +- Guardare il commento + (*CSC: this code is suspect and/or bugged: we try first without reduction + and then using whd. However, the saturate_term always tries with full + reduction without delta. *) + in primitiveTactics.ml. Potrebbe essere causa di rallentamento della apply + oltre che di bug! +- Bug di cut&paste: se si fa cut&paste di testo lockato si ottiene testo + lockato! +- keybinding globali: CTRL-{su,giu,...} devono fungere anche quando altre + finestre hanno il focus (e.g. cicBrowser). C'e' gia' da qualche parte il + codice che aggiunge i keybinding a tutte le eventBox, e' da ripristinare +- quando si sposta il punto di esecuzione dello script cambiare la parte di + script visibile nella finestra dello script +- Dare errore significativo al posto di NotWellTypedInterpreation +- Implementare menu edit: find/replace/cut/copy/undo/etc. +- Bug vari nella generazione dei principi di eliminazione: + 1. generazione nomi (usa ref incrementata localmente) + 2. prodotti dipendenti come non-dipendenti (visibili eseguendo passo + passo il test inversion.ma) + 3. usato trucco outtype non dipendenti per il case +- elim_intros_simpl e rewrite_simpl: ora non viene usata dal + ^^^^^^ ^^^^^^ + toplevel la variante che semplifica. Capire quali sono i problemi + e/o cosa fare delle varianti con semplificazione. +- eta_expand non usata da nessuno? +- notazione -> Luca e Zack +- eliminare eta_fix? (aspettare notazione) +- bug di refresh del widget quando si avanza ("swap" tra la finestra dei + sequenti e la finestra dello script) +- feedback su hyperlink nei sequenti e nel browser: rendere visibili gli + hyperlink (cursore a "manina"? hyperlink evidenziati?). La maction che + collassa la prova e' fastidiosa: la prova si chiude se non si clicca + correttamente su un hyperlink +- disabilitare (set_sensitive false) menu e bottoni mentre matita sta + processando lo script per evitare interazioni pericolose +- bug di ferruccio: fare un refresh dei nomi dopo l'applicazione + di una tattica. Di quali nomi fare refresh? (Andrea) di quelli + veramente ambigui, ovvero dell'ultimo binder tale che sotto di + esso un nome viene usato in maniera ambigua. Esempio: + \lambda x. \lambda x. (x x) (dove una x e' -2) ==> fare refresh + \lambda x. \lambda x. (x x) (dove entrambe sono -1) ==> non fare refresh +- a volte genera termini con variabili legate da piu' binder + Capita quando un tipo dall'environment (e.g. \lambda x.T) + viene inserito in un contesto (e.g. x:nat) dove le variabili + sono gia' state legate in precedenza. +- script outline -> Zack - cicBrowser: riagganciare(?) resa di termini scritti - nella URL(??) -> -- menu contestuale (tasto dx) nel sequent viewer -> -- controllo per script modificato o meno prima di uscire -> + nella URL(??) +- menu contestuale (tasto dx) nel sequent viewer -> attende notazione - riattaccare hbugs (brrr...) -> Zack -- tattica clear ? -> Gares +- gestione dei path per include: il path deve essere assoluto? da decidere ... +- highlight degli errori di parsing nello script (usando lo sfondo come per la + parte lockata di testo, da ripulire quando si modifica il testo o si sposta il + punto di esecuzione) +- salvare la parte di testo lockata dagli effetti di undo/redo (come?????) +- supportare l'apertura di piu' script contemporaneamente in tab/finestre + diversi/e DONE +- controllo per script modificato o meno prima di uscire -> Gares +- LApply deve prendere in input gli identificatori che va a generare; + lascio a Ferruccio la scelta della sintassi concreta -> Ferruccio +- fare tornare a matitac -1 quando lo stato finale e' + diverso da No_proof, non eseguire comandi quando lo + stato e' diverso da No_proof -> CSC +- uri_of_term and term_of_uri: cambiare il tipo per far + tornare delle uri!!! -> CSC - intro = intros 1 -> Gares - timetravel (urimanager) -> Gares - implementare macro in matitaScript.ml -> Gares