1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
- Define a small library to pretty print xml documents
e.g. pretty_dump_xml_to_file (shorter name of course)
- Dans l'evaluateur, pour les appels en position terminale, essayer de rutiliser
l'environnement (si c'est la bonne taille, rutiliser le bloc; si c'est les bonnes
valeurs, juste utiliser le mme bloc).
- Problem: a custom toplevel doesn't find ./cdo2ml (should put the path
to cduce's directory in the toplevel?)
======================================================================
Alain 2005-06-18
Simplifier la srialisation/dserialisation des structures internes;
utiliser les fonctions de srialisation de Caml.
Plan d'attaque:
- utiliser des cls de hachage au lieu d'entiers squentiels pour reprsenter
les namespaces, tags, labels, identificateurs; signaler quand mme
les collisions dans chaque espace de nommage.
type 'a t
val mk: int -> 'a t = "%identity"
val get: 'a t -> int = "%identity"
(autre avantage: possibilit de generer statiquement tables de dispatch
sur les atomes)
- pour les structures cycliques (types, patterns, automates): attacher
un identifiant unique d'unit de compilation dans chaque noeud;
interdire deux units avec mme id. Accepter que les mmes noeuds
se retrouvent dupliqus en mmoire (on peut quand detecter l'galit
en regardant id d'unit + id squentiel).
Autres ides:
- applatir la representation des valeurs.
| Atom of ns * local
| Xml of ns * local * fields * v
(support du systme de types pour interdire autre chose en position
de tag / attribut - bonne chose de toute manire).
- reprsentation plus compacte des descriptions de types, liste
chaine par ordre croissant des constructeurs:
type descr =
| Prod of BoolPair.t * descr
| Times of BoolPair.t * descr
| ...
| Empty
Avantage: oprations plus rapides ? ( vrifier) Bien choisir
l'ordre.
Supprimer cl de hash stocke.
- Utiliser un gnrateur automatique pour les fonctions de hash/comparaison.
======================================================================
Alain 2005-03-04
Handle OCaml exception in the OCaml/CDuce interface
======================================================================
Beppe 2003-11-30
Add url support for non selfcontained documents and expat
======================================================================
Beppe 2003-01-23
Add the following types.
<!--> String
<? T> String
<!cdata> String
Alain 2003-05-15
Il faut faire attention: on ne veut pas de commentaires dans la
representation interne, on ne veut pas distinguer section CDATA, etc...
|