TODO 2.57 KB
Newer Older
(no author)'s avatar
(no author) committed
1

2 3 4 5
- Define a small library to pretty print xml documents
  e.g.  pretty_dump_xml_to_file (shorter name of course)


6 7 8 9 10 11 12 13
- Dans l'evaluateur, pour les appels en position terminale, essayer de réutiliser
  l'environnement (si c'est la bonne taille, réutiliser le bloc; si c'est les bonnes
  valeurs, juste utiliser le même bloc).

- Problem: a custom toplevel doesn't find ./cdo2ml (should put the path
  to cduce's directory in the toplevel?)


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
======================================================================
Alain 2005-06-18

Simplifier la sérialisation/déserialisation des structures internes;
utiliser les fonctions de sérialisation de Caml.

Plan d'attaque:

- utiliser des clés de hachage au lieu d'entiers séquentiels pour représenter
  les namespaces, tags, labels, identificateurs; signaler quand même 
  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 unités avec même id. Accepter que les mêmes noeuds
  se retrouvent dupliqués en mémoire (on peut quand detecter l'égalité
  en regardant id d'unité + id séquentiel).


Autres idées:

- applatir la representation des valeurs.
  | Atom of ns * local
  | Xml of ns * local * fields * v

  (support du système de types pour interdire autre chose en position
  de tag / attribut - bonne chose de toute manière).

50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
- représentation plus compacte des descriptions de types, liste
  chainée par ordre croissant des constructeurs:

   type descr =
    | Prod of BoolPair.t * descr
    | Times of BoolPair.t * descr
    | ...
    | Empty

  Avantage: opérations plus rapides ? (à vérifier)   Bien choisir
  l'ordre.
  Supprimer clé de hash stockée.

- Utiliser un générateur automatique pour les fonctions de hash/comparaison.

65 66 67 68 69
======================================================================
Alain 2005-03-04

Handle OCaml exception in the OCaml/CDuce interface

70
======================================================================
71
Beppe 2003-11-30
72

73 74 75 76
Add url support for non selfcontained documents and expat


======================================================================
77 78 79 80 81 82 83 84
Beppe 2003-01-23

Add the following types. 

<!--> String
<? T> String
<!cdata> String

85 86 87
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...
88