diff --git a/AFAIRE b/AFAIRE
deleted file mode 100644
index af7e376936510aedd623984038b560e73cf01bf5..0000000000000000000000000000000000000000
--- a/AFAIRE
+++ /dev/null
@@ -1,45 +0,0 @@
-
-12/08/06
-bug 
-./objlinux64/lus2lic test_static/cond01.lus -dbg lazyc
-
-
-12/08/03
-
-./objlinux/lus2lic test_static/predef01.lus
-Fatal error: exception Match_failure("objlinux/doNoPoly.ml", 55, 17)
-
-
-12/08/01 ->
- ./objlinux/lus2lic test_static/predef01.lus -dbg lazyc
-*** Error in file "/home/raymond/git/lus2lic/test_static/predef01.lus", line 6, col 6 to 8, token 'map':
-*** Lustre::map<<Lustre::or, 42>>: unknown Lustre operator. 
-*** Available operators in the current scope are:
-
-----------------------
-
-
-12/07/30 -> remplacement de GetEff.check_static_arg 
-  par une version epurée qui ne fait de cohérence de type
-  (cf vielle version check_static_arg_old.ml)
-  -> A FAIRE !!
-
-================================================================
-- UnifyType.f (BIEN AVANCE)
-----------------------------------------------------------------
-unifyType : remplacer
-   Unif of Eff.type_
-par
-   Unif of Eff.poly_match
-----------------------------------------------------------------
-07/12 fait partiellement, au niveau des expressions
-----------------------------------------------------------------
-
-================================================================
-- Eff : node_exp dans by_pos_op dans val_exp_core
-----------------------------------------------------------------
-Ca revient à copier la définition d'un noeud partout où
-il est utilisé => FAIRE AUTREMENT
-----------------------------------------------------------------
-----------------------------------------------------------------
-
diff --git a/ALIRE b/ALIRE
deleted file mode 100644
index ffa6aa70014baaeebf5b7372d5a04fd5d4329a07..0000000000000000000000000000000000000000
--- a/ALIRE
+++ /dev/null
@@ -1,57 +0,0 @@
-
-Reprise des travaux, juillet 2012 ...
-
-Besoins :
-- intégrer les constructions d'horloge avancées (condact et merge)
-
-En cours :
-- sans tout casser, remettre un peu d'ordre dans la bande  
-  Compile/Eff/LasyCompiler, surtout LasyCompiler qui fait 
-  un peu trop de choses...
-- Idée, on passe par une forme intermédaire LicPrg :
-  * composée des type "compilés" Eff.xxx
-  * point de sortie de LasyCompiler : son rôle doit
-    être revu à la baisse, il s'occupe de "tirer" les fils 
-    (aspect lazy), c'est-à-dire résoudre tout ce qui est
-    packaging et parametres statiques, MAIS PAS PLUS
-  * toutes les autre modifs de type source_2-source sont fait
-    dans des modules dédiés par des fonctions LicPrg -> LicPrg
-  * L'impression proprement dite des progs est un (simple)
-    dump du LicPrg : elle n'est plus faite au fur et à mesure
-    dans LasyCompiler
-
-
-ETAT COURANT
-
------------------------------------------------------------
-12/07/09
-
---> Les expressions de noeud qui s'avèrent polymorphes et/ou
-  surchargés, sont :
-  - acceptées dans les val_exp, à condition que l'utilisation
-    lève l'ambiguité
-  - refusées dans les "node alias"
-
-  = PLUS TARD : il faudrait que les noeuds qui s'avèrent polymorphes
-    et/ou surchargés soient traités comme de MACROS avec un STATIG ARG
-    de nature TYPE implicite
-
------------------------------------------------------------
-12/07/05
-
-- completement séparé la compil de l'affichage, du coup
-  on a débranché l'ancien source_to_source
-
-- l'ajout d'alias sur type array est fait par une passe source 2 source :
-  ca fait un exemple de traitement s2s simple,
-  c'est plus propre qu'avant ou c'etait fait par effet de bord
-  a l'affichage
---> consequence co-latterale : les clashs sur nom de type introduit
-    sont gérés de manière plus "smart"
-
-==> reste a faire :
-   refaire les traitements source_to_source !!
-   
-    
-  
-
diff --git a/ALIRE.compil-des-nodes b/ALIRE.compil-des-nodes
deleted file mode 100644
index cb7aedf9e5390337bdbb05ee680c3f82ef2e7b63..0000000000000000000000000000000000000000
--- a/ALIRE.compil-des-nodes
+++ /dev/null
@@ -1,12 +0,0 @@
-
-compile_all ->
-
-compile_all_nodes ->
-
-compile_all_item node_check_interface ->
-  node_check_interface:cache on ->
-
-node_check_interface_do
-
-   node_check: cache on node_check_do
- + node_check_do en plus pour l'interface (prov)
diff --git a/_oasis b/_oasis
index ecc2dfa0efffe4df69dbe4fd32c07395b59ff3ed..b33f3518cad3f5fa8b780837ff45e734fb76a788 100644
--- a/_oasis
+++ b/_oasis
@@ -1,6 +1,6 @@
 OASISFormat: 0.4
 Name:        lustre-v6
-Version:     1.1.631
+Version:     1.632
 Synopsis:    The Lustre V6 Verimag compiler
 Description: This package contains:
              - lus2lic: the (current) name of the compiler (and interpreter via -exec).
diff --git a/alire b/alire
deleted file mode 100644
index 648a0c2e903b00dc1a67db97ddfeb0255f4cedee..0000000000000000000000000000000000000000
--- a/alire
+++ /dev/null
@@ -1,4 +0,0 @@
-
-git clone file:///usr/local/src/lustre/repos/lus2lic.git lus2lic
-
-
diff --git a/figs/srctab.fig b/doc/figs/srctab.fig
similarity index 100%
rename from figs/srctab.fig
rename to doc/figs/srctab.fig
diff --git a/doc/lpp.dep.dot b/doc/lpp.dep.dot
deleted file mode 100644
index 731fbbd528f84e08e9c7b7bbcb56fe9bda706073..0000000000000000000000000000000000000000
--- a/doc/lpp.dep.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-  size="7.5,10" ;
-  rankdir = TB ;
-}
diff --git a/doc/lpp.depfull.dot b/doc/lpp.depfull.dot
deleted file mode 100644
index 54321146e77215c8321b0cb95a7e5a52050f09de..0000000000000000000000000000000000000000
--- a/doc/lpp.depfull.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-  size="7.5,10" ;
-  rankdir = LR ;
-}
diff --git a/lazy.notes.ml b/lazy.notes.ml
deleted file mode 100644
index 9b1f906542786ef6c792966cb27bd061cea43451..0000000000000000000000000000000000000000
--- a/lazy.notes.ml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-#DBG: LazyCompiler.node_check_interface 'Lustre::map<<node oper = Lustre::or, const size = 42>>'
-#DBG: LazyCompiler.lookup_node_exp_eff: node key 'Lustre::map<<node oper = Lustre::or, const size = 42>>' NOT FOUND
-#DBG: LazyCompiler.node_check 'Lustre::map<<node oper = Lustre::or, const size = 42>>'
-#DBG: LazyCompiler.x_check 'in file "/home/raymond/git/lus2lic/test_static/predef01.lus", line 6, col 6 to 8, token 'map''
-#DBG: LazyCompiler.lookup_node_exp_eff: node key 'Lustre::map<<node oper = Lustre::or, const size = 42>>' NOT FOUND
-*** Can not find package 'Lustre' in the following packages: 
-
-
-
-let x_check
-	(tab            : ('x_key, 'x_eff  Eff.check_flag) Hashtbl.t)
-	(find_x         : SymbolTab.t -> Ident.t -> Lxm.t -> ('x_info  Lxm.srcflagged) SymbolTab.elt)
-	(x_check_do     : t -> 'x_key -> Lxm.t -> SymbolTab.t -> bool -> Ident.pack_name -> x_info srcflagged -> 'x_eff)
-	(lookup_x_eff   : ('x_key, 'x_eff Eff.check_flag) Hashtbl.t -> 'x_key -> Lxm.t -> 'x_eff)
-	(pack_of_x_key  : 'x_key -> string )
-	(name_of_x_key  : 'x_key -> string)
-	(this           : t)
-	(x_key          : 'x_key)
-	(lxm            : Lxm.t)
-: 'x_eff
-
-
-
-NodeStaticArgEff  of (Ident.t * node_key)
diff --git a/notes-pascal/devel-notes.pdf b/notes-pascal/devel-notes.pdf
deleted file mode 100644
index 288601a46534d2bf101aa5d8e9aecbebf6952d3c..0000000000000000000000000000000000000000
Binary files a/notes-pascal/devel-notes.pdf and /dev/null differ
diff --git a/notes-pascal/devel-notes.tex b/notes-pascal/devel-notes.tex
deleted file mode 100644
index b46bfc524001c278304eb750c9e454c39ef1f6b8..0000000000000000000000000000000000000000
--- a/notes-pascal/devel-notes.tex
+++ /dev/null
@@ -1,154 +0,0 @@
-
-%PASTEX:FIGDIR=figs
-\documentclass[12pt,a4paper]{article}
-
-\usepackage[latin1]{inputenc} % 8 bits
-\usepackage[francais]{babel}  % francais
-\usepackage{graphics}
-\usepackage{latexsym}
-\usepackage{here}
-\usepackage{color}
-
-%\input{commandes}
-%\input{algoenv}
-%\input{save_paper}
-
-\sloppy
-
-\title{LPP-v6 -- Notes Développeur}
-\author{P.Raymond}
-\date{}
-
-\begin{document}
-
-\maketitle
-\tableofcontents
-%\clearpage
-
-\section{Ligne de commande et analyse syntaxique}
-
-\subsection{Fichiers acceptés}
-
-Les fichiers supportés sont~:
-\begin{itemize}
-\item Les fichiers \verb|foo.lus| à la syntaxe Lustre-v6 comportant un ensemble
-de déclarations de packages et de modules.
-\item Les fichiers \verb|foo.lus| contenant uniquement un corps de
-package à la syntaxe v6~;
-un tel fichier est considéré comme la déclaration implicite d'un package
-dont le nom est \verb|foo|, et dont tous les items sont exportés (\verb|provided|). 
-\end{itemize}
-
-Restrictions/à faire~:
-\begin{itemize}
-\item pour l'instant on prend un seul fichier, mais ça sera facilement adaptable
-\end{itemize}
-
-\subsection{Analyse syntaxique}
-
-Elle produit un ensemble de déclarations de packages et de modèles
-dans une structure syntaxique abstraite (module \verb|Syntaxe|),
-qui constitue le {\bf source brut}.
-
-\section{Analyse des déclarations}
-
-C'est la première phase de compilation qui consiste à vérifier la cohérences
-des déclaration modulo l'organisation en ``name-space'' (les packages).
-
-Cette phase produit une nouvelle version du source (module \verb|SrcTab|)~:
-\begin{itemize}
-\item unicité des déclarations de modèles et de packages 
-\item instanciation (purement syntaxique) des modèles
-\item identification des items exportés et de leurs définitions
-abstraites (e.g. un type fourni par un package est présenté abstrait
-pour les utilisation extérieures).
-\end{itemize} 
-
-Au final on a une table de sources bien organisée (\verb|SrcTab|) mais
-qui renvoie encore à des infos purement syntaxiques (\verb|Syntaxe|),
-voir figure~\ref{srctab}~:
-\begin{itemize}
-\item les trois tables d'export (const, type, oper) sont indéxées
-par des identificateurs absolus (pack+nom) et pointent sur 
-des définitions éventuellement abstraites~: c'est la seule vision
-qu'on en a de l'extérieur, et l'analyse doit être faite uniquement
-modulo cette info.
-\item la table des définitions de pack, chacun comportant 
-ses tables d'items (const, type, oper)~; les idents sont relatifs
-et les définitions concrêtes.
-\end{itemize}
-
-\begin{figure}
-\begin{center}
-\input{srctab.pdf_t}
-\caption{La table des sources}
-\label{srctab}
-\end{center}
-\end{figure}
-
-
-\section{Compilation à la demande}
-
-Une compilation modulaire, package par package, est pratiquement 
-impossible~:
-\begin{itemize}
-\item comment générer du code pour des n\oe uds paramétrés ?
-\item comment faire du type-checking générique pour des tableaux
-dont on ne connaît pas la taille ?
-\item et encore plus dur, comment traiter la récursivité statique ?
-\end{itemize}
-
-La solution la plus raisonable semble de faire une compilation à
-la demande~:
-\begin{itemize}
-\item on part d'un n\oe ud principal à compiler, dont tous les éventuels
-arguments statiques sont connus (en particulier la taille effective des tableaux
-manipulés),
-\item on ``tire'' récursivement sur les dépendances pour compiler tous
-les items nécessaires à ce n\oe ud (ça comprend les types, les constantes statiques,
-les n\oe uds internes utilisés).
-\end{itemize}
-
-\paragraph{Remarque.} Un point n'est pas très clair~:
-est-il intéressant de faire malgrès tout une analyse préliminaire 
-indépendante d'un main particulier~?
-
-Dans Lpp4x, c'est ce qu'on appelait le ``typage de surface''~: 
-ça vérifiait les références, et faisait un typage approché, où, en particulier,
-la taille des  tableaux était abstraite.
-
-\subsection{Items syntaxiques vers items effectifs}
-
-C'est la terminologie hérité de Lpp4x~:  la compilation consiste
-à associer à des items syntaxiques (types, consts, nodes) des
-items effectifs (c'est-à-dire compilés).
-
-\subsection{Compile Task}
-
-Pour implémenter la compilation à la demande, on met en \oe uvre un mécanisme
-de ``tâches de compilation''. Chaque tâche est identifiée parfaitement par~:
-\begin{itemize}
-\item l'item à traiter (type, const, n\oe ud),
-\item le contextes (table de symboles) dans lequel on doit traiter.
-\end{itemize}
-
-Il faut bien différencier~:
-\begin{itemize}
-\item la recherche d'infos {\em utilisateur} pour un item,
-\item la compilation effective de l'item.
-\end{itemize}
-Par exemple, la compilation d'un n\oe ud peut nécessiter des infos
-sur un type dans le contexte de compilation de ce n\oe ud.
-Supposons qu'il s'agisse d'un type importé d'un package (soit \verb|Pa::ty|)~:
-\begin{itemize}
-\item on cheche l'info accessible sur le type depuis le contexte actuel~;
-supposons que le type soit laissé abstrait dans la table provides de \verb|Pa|,
-la compilation du n\oe ud courant doit se faire avec cette seule info
-(\verb|Pa::ty| est un type abstrait),
-\item parallèlement, on stocke dans les tâches de compilation à effectuer la
-compilation effective de \verb|Pa::ty|, dans le contexte du pack \verb|Pa|.
-\end{itemize}
-
-
-
-\end{document}
diff --git a/notes-pascal/exemplecompil-0.tex b/notes-pascal/exemplecompil-0.tex
deleted file mode 100644
index b50083e32cb9776676e7ecaf98f79ecb3fc0d92c..0000000000000000000000000000000000000000
--- a/notes-pascal/exemplecompil-0.tex
+++ /dev/null
@@ -1,287 +0,0 @@
-
-
-\section{Code source}
-
-Le code source contient une déclaration de modèle (\verb|modSimple|),
-3 packages déclarés comme des instances de ce modèle (\verb|pint|,
-\verb|pbool| et \verb|preal|) et deux packages classiques
-avec ``bodies'' (\verb|inter| et \verb|mainPack|).
-
-Le but est de compiler le n\oe ud \verb|mainPack::preced|.
-
-\begin{verbatim}
-----------------------------
-model modSimple
-needs 
-    type t;
-provides
-    node fby1(init, fb: t) returns (next: t);
-body
-  
-node fby1(init, fb: t) returns (next: t);
-let
-  next = init -> pre fb;
-tel
-end
------------------------
-package pint is modSimple(int);
-package pbool is modSimple(bool);
-package preal is modSimple(real);
--------------------------
-package inter
-  uses pbool, pint, preal;
-  provides 
-    node preced(in: selType) returns (out, out2: selType);
-    const n : int;
-    type selType;
-body        
-  type selType = { i: int; b: bool; r: real };
-	const n: int = -4;
-	node preced(in: selType) returns (out, out2: selType);
-	let
-      out2 = { i = 0; b = true; r = .0}; --pSel::fby1(in);
-  		out.i = pint::fby1(out2.i, in.i);
-  		out.b = pbool::fby1(out2.b, in.b);
-  		out.r = preal::fby1(out2.r, in.r);
-	tel 
-end
---------------------------
-package mainPack
-        uses inter;
-        provides 
-          node preced(in: inter::selType) returns (out: inter::selType); 
-body
-     type  T = int^N;
-     const X = N;
-           N : int = -2 * inter::n;
-        node preced(in: inter::selType) returns (out: inter::selType);
-        	var out2 : inter::selType;
-				let
-                out, out2 =  inter::preced( in );
-        tel 
-end
-\end{verbatim}
-
-\section{Vocabulaire}
-
-Dans rentrer dans les détails on signale que~:
-\begin{itemize}
-\item les dénotations syntaxiques de type sont appelées typexp
-(ne pas confondre avec les définitions de types),
-\item les dénotations de valeurs (constantes, flots) sont appelées valexp. 
-\end{itemize}
-
-L'approche générale est d'associer à toute notion syntaxique ``toto''
-une notion sémantique (c'est-à-dire ``compilée), qu'on appèlere
-``toto-eff'' (pour effectif).
-Par exemple, à toute dénotation de type sera associée un ``typeff'',
-qui, dans ce cas précis, servira de base au type-checking
-(ce sera la dénotation canonique du type). 
-
-
-\section{Table des pack source}
-
-Une première étape consiste à traiter les instances de modèles, de manière à avoir 
-des packs utilisés. On reste très ``syntaxique'' à ce niveau.
-Par exemple, pour \verb|pint|, on construit une structure pack interne
-équivalente à ce qu'on aurrait obtenu en écrivant directement~:
-
-\begin{verbatim}
-package pint
-provides
-    type t = int;
-    node fby1(init, fb: t) returns (next: t);
-body
-   node fby1(init, fb: t) returns (next: t);
-   let
-     next = init -> pre fb;
-   tel
-\end{verbatim}
-
-Noter que les paramètres de \verb|needs| deviennent des \verb|provides|
-dans le pack instancié. 
-
-\section{Compilation}
-
-Le but est de produire un code intermédiare Lustre Internal Code (lic).
-On sait déjà que~:
-\begin{itemize}
-\item c'est du Lustre (collection de nodes, type et const),
-\item sans pack,
-\item ça doit être facilement exécutable/simulable 
-\end{itemize}
-
-On fait une compilation ``lazzy'' du n\oe ud \verb|mainPack::preced|. 
-
-\subsection{Relativité des items compilés}
-
-Toute compilation d'item se fait relativement au pack de définition de cet item.
-En particulier, le type-checking est relatif au pack où on est, par exemple~:
-\begin{itemize}
-\item dans \verb|mainPack::preced| on voit que l'entrée \verb|in| est déclarée
-de type \verb|inter::selType|. On cherche dans l'ensemble des sources
-la déclaration correspondante~: dans le provides de \verb|inter|,
-ce type est abstrait. Donc, dans \verb|mainPack|, la représentation canonique
-de ce type (le ``typeff'' qui sert de base au type-checking) sera un type abstrait. 
-
-Ce faisant, on mettra dans la liste des items à compiler le type
-\verb|inter::selType|, qui lui sera compilé depuis le pack \verb|inter|.
-Dans \verb|inter| le typeff ne sera donc pas un type abstrait, mais 
-un type structure.
-
-En bref, le processus de compilation consiste en une liste de ``tâches'' de compilation
-à effectuer, chaque tâche étant constituée d'un item particulier dans un pack particulier. 
-
-Reprenons l'exemple...
-
-\section{Tâche ``node \verb|mainPack::preced|''}
-
-\subsubsection{Environnement de n\oe ud}
-
-La compil se fait dans un environnement de résolution des références (dont l'implémentation
-est à définir). Ici, on s'intéresse juste à ce qu'il doit faire, pas à comment il est fait~!
-
-Tout ce qu'on sait au départ, c'est que cet env est lié à \verb|mainPack|, c'est-à-dire
-qu'il cherche cherche les items nécessaires en priorité dans \verb|mainPack|.
-
-L'environnement de départ est un ``pack env'' avec 3 espaces de noms
-bien différenciés (const, types et opérateurs).
-
-Pour traiter un n\oe ud, on a besoin d'un ``node env'' où on retrouve les  espaces de noms
-type et opérateurs, mais où on a un nouvel espace, les flots~:
-\begin{itemize}
-\item en priorité les variables du n\oe ud (input, output, local),
-\item sinon des constantes du package.
-\end{itemize}
-
-Pour~:
-\begin{verbatim}
-node preced(in: inter::selType) returns (out: inter::selType);
-var out2 : inter::selType;
-\end{verbatim}
-on a donc dans l'env node~:
-\begin{itemize}
-\item \verb|in|, ident d'entrée, typé par la typexp \verb|inter::selType|,
-\item \verb|out|, ident de sortie, typé par la typexp \verb|inter::selType|,
-\item \verb|out2|, ident de locale, typé par la typexp \verb|inter::selType|.
-\end{itemize}
-
-La première chose à faire est de type-checker ces variables, c'est-à-dire
-de leur associer un typeff. Dans les trois cas, on doit traiter
-la même typexp \verb|inter::selType| (on est malin, on le fera une seule
-fois et on tabulera).
-
-Vu depuis le pack courant, on obtient un typeff ``type abstrait de nom \verb|inter::selType|''. 
-
-\subsubsection{Profil du n\oe ud}
-En même temps (ou avant ou juste après) qu'on élabore le node-env, on calcule et stocke
-le profil du n\o eud, c'est-à-dire essentiellement sont type ``fonctionnel''. On obtient
-un truc du style \verb|inter::selType -> inter::selType|.
-Dans un programme plus compilqué il faut tenir compte des horloges, la notion 
-de profil est donc un peu plus compliquée.
-
-\subsubsection{Traitement du body du n\oe ud}
-
-Toutes les équations du n\oe ud doivent être traitées. On doit faire essentiellement trois choses~:
-\begin{itemize}
-\item type-checking (le type de la left-part correspond au type de la right-part),
-\item clock-checking (similaire, c'est un calcul de type aussi),
-\item def-checking~: traitement plus global qui consiste à vérifier que toutes
-les variables produites sont bien définies de manière unique
-\end{itemize}
-Tous ces traitements peuvent être fait en même temps ou en séquence (à voir).
-Le résultat doit être  un ensemble ``d'équations effectives'', c'est-à-dire
-certainement correctes, et sans doute récrites sous une forme
-``facile à exécuter'' (c'est pas encore très clair~: c'est lié à
-la définition qu'on a du code intermédiaire \verb|lic|).
-
-On a une équation~:
-\begin{verbatim}
-out, out2 =  inter::preced( in );
-\end{verbatim}
-En général, on n'a pas 1 type mais une liste de type par partie droite/gauche
-(c'est lié à la notion de tuple implicite).
-
-Ici, pour la partie droite on calcule la liste de typeff \verb|[inter::selType;inter::selType]|.
-
-Pour la partie droite, on traite la valexp \verb|inter::preced( in )|~:
-\begin{itemize}
-\item récursivement, on traite la liste d'argument \verb|in|, qui est typée \verb|[inter::selType]|.
-\item puis on cherche le profil de l'opérateur \verb|inter::preced|~:
-      \begin{itemize}
-		\item on trouve que c'est un node provided par \verb|inter|, avec le profil déclaré~:
-				\verb|node preced(in: selType) returns (out, out2: selType)|,
-		\item ce profil est traité pour optenir un profil effectif~:
-				\verb|inter::selType -> inter::selType * inter::selType|
-		\item cette information suffit à continuer le traitement local, mais on note qu'il faudra
-				effectuer la tâche de compilation \verb|node inter::preced| 
-		\item on résout \verb|(inter::selType -> inter::selType * inter::selType)| appliqué
-            à \verb|[inter::selType]| qui donne finalement la liste de typeff
-				\verb|[inter::selType;inter::selType]| pour la partie droite.
-		\end{itemize}
-\item on vérifie que partie gauche et droite sont compatibles (même type) : le type-checking
-réussit.
-\end{itemize}
-Pour les programmes plus compliqués, on doit aussi tenir compte des horloges.
-
-Au cours du traitement, ou après, on fait le def-ckecing~: 
-toutes les ssorties/locales sont marquées comme indéfinies.
-Chaque fois qu'on traite une partie gauche, on marque les variables
-définies par l'équation. Attention, dans le cas de tableaux ou de structures,
-la définition peut être partielle, ce qui complique un peu.
-Si une variable (ou un morceau de variable) est défini plusieurs fois, il y a erreur.
-Si à la fin une variable (ou un morceau de variable) n'est pas défini, il y a erreur.
-
-Au final, si tout va bien, on a construit un version ``compilée'' du corps
-du n\oe ud, éventuellement légérement différente de la version source 
-(le formar lic à définir).
-
-\section{Tâche ``type \verb|inter::selType|''}
-
-On traite la déclaration du type (vu de l'intérieur du pack \verb|inter|~:
-\begin{verbatim}
-type selType = { i: int; b: bool; r: real };
-\end{verbatim}
-
-On crée une déclaration compilée équivalente (c'est une structure avec les champs etc.).
-Le typeff de réference dans le pack est crée~: c'est tout simplement l'ident (\verb|selType|).
-
-\section{Tâche ``node \verb|inter::preced|''}
-
-Similaire à ce qu'on a déjà vu.
-\begin{verbatim}
-node preced(in: selType) returns (out, out2: selType);
-let
-   out2 = { i = 0; b = true; r = .0}; --pSel::fby1(in);
-   out.i = pint::fby1(out2.i, in.i);
-   out.b = pbool::fby1(out2.b, in.b);
-   out.r = preal::fby1(out2.r, in.r);
-tel 
-\end{verbatim}
-Ça va nous conduire à rechercher les profils ``provided'' des n\oe uds
-\verb|pint::fby1|, \verb|pbool::fby1|, \verb|preal::fby1|, 
-et à mettre ces même n\oe uds dans la liste des tâche de compil.
- 
-etc.
-
-\section{Quelques points importants}
-
-Dans les tâches de compil on va avoir aussi~:
-\begin{itemize}
-\item évaluation statique de constante, pour pouvoir traiter les types tableaux,
-les paramètres statiques. Dans ce cas, le ``consteff'' est une vraie constante
-compile-time (2, 12, true, 42).
-Normelement, ga ne concerne QUE les entiers et les booléens, pas les réels (à vérifier),
-\item compilation standard de constantes~; dans ce cas on n'est pas obligés à
-aller jusqu'à l'évaluation complète (on peut garder des expressions, des constantes
-abstraites etc.).
-\item en général, un n\oe ud à compiler n'est pas un simple ident~: c'est un ident
-plus une liste de paramètres statiques effectifs (ce qu'on appèle les arguments 
-statiques). En général, un tâche de compil de n\oe ud sera caractérisée par~:
-\begin{verbatim}
-packid::nodeid << type t = typeff; const n = consteff >>
-\end{verbatim}
-
-\end{itemize}
-
-\end{itemize}
diff --git a/notes-pascal/exemplecompil.txt b/notes-pascal/exemplecompil.txt
deleted file mode 100644
index 0e893f55bd74a028f27d706e51884fb927beba59..0000000000000000000000000000000000000000
--- a/notes-pascal/exemplecompil.txt
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
-1) Expansion des modèles
-------------------------
-Réalisée dans le module SrcTab
-
-Exemple :
-
-   model modSimple
-   needs
-       type t;
-   provides
-       node fby1(init, fb: t) returns (next: t);
-   body
-   
-   node fby1(init, fb: t) returns (next: t);
-   let
-     next = init -> pre fb;
-   tel
-   end
-   
-et :
-
-   package pint is modSimple(int);
-
-on instancie ``syntaxiquement'', et tout ce passe comme ci on avait un pack :
-
-   package pint
-   provides
-       type t = int;
-       node fby1(init, fb: t) returns (next: t);
-   body
-      node fby1(init, fb: t) returns (next: t);
-      let
-        next = init -> pre fb;
-      tel
-
-2) Tables des items
--------------------
-
-Dans SrcTab, on a une table de pack_mng. Chaque
-pack a (au plus) deux tables de symboles pour résoudre
-les références SIMPLES (juste un ident) :
-- une pour traiter le corps (la def) du pack
-- une optionnelle pour traiter la partie provide
-  (si pas de provide, alors on a une seule table pour les deux)
-
-N.B. Les SymbolTab restent au niveau syntaxique :
-- ident de type -> extern + nom complet
-                ou local  + def syntaxique
-(et pareil pour const et oper)
-
-
-3) Compilation à la demande
----------------------------
-
-Le cas général est la compilation d'une instance 
-de template (noeud avec arguments statiques). Le
-cas simple est une version dégénérée.
-
-On demande donc la compil d'un noeud AVEC ses arguments statiques
-déjà résolus (le tout s'appele un node_key).
-
-La compil se fait dans un GlobalEnv qui gère les "items"
-déjà compilés. La structure du Global suit celle du SrcTab :
-pour chaque pack, on a :
-- un PackEnv "body",
-- un éventuel PackEnv "provide"
-
-
diff --git a/notes-pascal/pack+static.problemes b/notes-pascal/pack+static.problemes
deleted file mode 100644
index 940e3b4ee3e4c176068e58b57fac967546175b5e..0000000000000000000000000000000000000000
--- a/notes-pascal/pack+static.problemes
+++ /dev/null
@@ -1,150 +0,0 @@
-
-Probleme initial :
- Au niveau syntaxe, les noeuds/functions avec params statiques
- sont pas prévus dans le "provides" des package
-
-Sol : Ajout dans la synaxe -> ok
-
-Probleme 2 :
-
- Pour la compilation "lazy", on a besoin de la nature (const, type, node)
- des params statiques attendus pour pouvoir evaluer correctement les
- argument statiques donnÃs
-
- Il y avait un magouille prevue pour ca (entre autre) dans Ast2lic :
- via le champs global_symbol de IdSolver on peut retrouver
- le "source" des noeuds et donc leurs params statiques
- (cf. get_abstract_static_params)
- Mais ca ne marche INTRINSEQUEMENT que pour les noeuds references SANS
- package (i.e toto et pas titi::toto)
-
-Sol : ajout de all_src dans IdSolver, ce qui permet en fait
- de retrouver n'importe quelle info source si besoin
- (c'est un peu la grosse Bertha quoi)
- 
-Problemes restant ?
-- c'est un peu violent, pas dans l'esprit de IdSolver,
-   qui se voulait un mecanisme d'abstraction du source ...
-- du coup, le role de OdSolver.global_symbol est moins clair :
-  est-ce c'est encore necessaire de le trimballer ?
-
-
-XXX- Il reste encore des trucs bizarre, nottament quand on appelle
-     depuis un package
-Sol : il suffit de commenter un assert dans solve_x_idref, rien a faire
-      dans le cas de params statique puisque on a reussi a arriver
-      jusque la, cést que le "genre"des params statiques est ok
-
-
-Tests d'utilisation de dadic.lv6 (source + bas) :
-
-1) sans package 
- ---------------
-(* fichier x5.lv6 *)
-node x5 = Dadic::Mult<<5>>;
-
-./_build/src/main.byte dadic.lv6 x5.lv6
-
--> OK
-(n.b. avec un warning pas necessaire:
-Warning. in file "/net/estrop/local/pascal/git/lus2lic/dadic.lv6", line 42, col 5 to 8, token 'Mult':
----> Dadic::Mult<<const n = 1>> is declared as a node, but it uses no memory (i.e., it is a function).
-
-2) avec package SANS uses
--------------------------
-(* fichier toto1.lv6 *)
-package Toto1
-provides
-   node x5(x:bool)returns (y:bool);
-body
-   node x5 = Dadic::Mult<<5>>;
-end
-
-./_build/src/main.byte dadic.lv6 toto1.lv6 -n Toto1::x5 
-
--> OK (meme warning)
-
-
-3) avec package ET uses
--------------------------
-(* fichier toto2.lv6 *)
-package Toto2
-uses Dadic;
-provides
-   node x5(x:bool)returns (y:bool);
-body
-   node x5 = Mult<<5>>;
-end
-
-./_build/src/main.byte dadic.lv6 toto2.lv6 -n Toto2::x5 -ec
-
--> KO
-*** oops: lus2lic internal error
-        File "src/licTab.ml", line 323, column 20
-*** when compiling lustre programs dadic.lv6, toto2.lv6
-
-*** You migth want to sent a bug report to jahier@imag.fr
-
-Sol : voir ci dessus, ca marche
-
-fichier dadic.lv6
-(******************************************************
-dadic.lv6 version 1.00
-******************************************************)
-package Dadic
-provides
-	(* O : x -> 2*x *)
-	node O(x : bool) returns (y : bool);
-	(* I : x -> 2*x + 1 *)
-	node I(x : bool) returns (y : bool);
-	(* Add : x,y -> x + y *)
-	node Add(x, y : bool) returns (xpy : bool);
-	(* Chs : x -> -x *)
-	node Chs(x : bool) returns (ux : bool);
-	(* Mult : const n, x -> n*x *)
-	node Mult<<const n : int>>(x : bool) returns (y : bool);
-	(* OfInt : const n -> x *)
-body
-   node O(x : bool) returns (y : bool); let y = false -> pre x; tel
-   node I(x : bool) returns (y : bool); let y = true -> pre x; tel
-   node Add(x, y : bool) returns (xpy : bool);
-   var c : bool;
-   let
-	   c = if (false -> pre c) then (x or y) else (x and y);
-	   xpy = ((false-> pre c) = (x = y));
-   tel
-   node Chs(x : bool) returns (ux : bool);
-   var after_x : bool;
-   let
-	   ux = if (after_x) then (not x) else (x);
-	   after_x = false -> pre(after_x or x);
-   tel
-   node Mult<<const n : int>>(x : bool) returns (y : bool);
-   let
-	   y = with (n < 0) then (
-			Mult<<-n>>(Chs(x))
-	    ) 
-	    else with (n = 0) then false
-	    else with (n = 1) then x
-	    else with ((n mod 2) = 0) then (
-	       Mult<<n div 2>>(O(x))	
-	    ) else ( --(n div 2) = 1
-	       Add(Mult<<n div 2>>(O(x)), x)
-	    );
-   tel
-   (* ici -> pas de noeuds sans entree ? *)
-   node OfInt<<const n : int>>(_:bool) returns (y : bool);
-   let
-	   y = with (n = -1) then true
-	       else with (n = 0) then false
-	       else with ((n mod 2) = 0) then
-	          O(OfInt<<n div 2>>(true))
-	       else with (n > 0) then
-	          I(OfInt<<n div 2>>(true))
-	       else
-	          --attention aux négatifs !
-	          I(OfInt<<(n-1) div 2>>(true));
-   tel
-end
-
-
diff --git a/README.org b/notes.org
similarity index 92%
rename from README.org
rename to notes.org
index 5f8b6cf11bf895929734a5f40970eacc6b0b486b..286730c4689b2db369f0b633a904b83703a5cea7 100644
--- a/README.org
+++ b/notes.org
@@ -5,29 +5,10 @@ Pour installer les outils de cross compilation (gcc et ocaml) :
 
  aptitude install mingw32 mingw32-binutils mingw32-runtime mingw32-ocaml gcc-mingw32 
 
-
-sur grivola, le cross-compilateur gcc est la :
- /usr/i586-mingw32msvc/bin
-
-
-
-
-* cloning
-
-you need ocaml, rdbg-plugin, (more ?)
-
-#+BEGIN_SRC sh
-git clone file:///usr/local/src/lustre/repos/lus2lic.git lus2lic
-cd lus2lic
-make 
-make test
-#+END_SRC
-~
 * Tests (=./test=)
 
 requires 'sudo apt-get install dejagnu'
 
-
 The idea is to run those tests before *each commit*.
 
 All  tests  are  controlled  by file:test/Makefile;  which  runs  the
diff --git a/src/lv6version.ml b/src/lv6version.ml
index 7d8f670a84e3728be3fe2b98644ab6ec99328b2e..ee94718d609d5a039d03fac9d6e995fa2a221da9 100644
--- a/src/lv6version.ml
+++ b/src/lv6version.ml
@@ -1,7 +1,7 @@
 (** Automatically generated from Makefile *) 
 let tool = "lus2lic"
 let branch = "master"
-let commit = "631"
-let sha_1 = "985f0039a1a3e13cc876be36e8b0e77fb0471e28"
+let commit = "632"
+let sha_1 = "d1b062d3a67a2e288c8904f60b9c9874c11b0707"
 let str = (branch ^ "." ^ commit ^ " (" ^ sha_1 ^ ")")
 let maintainer = "jahier@imag.fr"
diff --git a/todo.org b/todo.org
deleted file mode 100644
index 8b8f0d7f7f2229240730771a4ca8f92630893def..0000000000000000000000000000000000000000
--- a/todo.org
+++ /dev/null
@@ -1,571 +0,0 @@
-#+TODO: TODO(!) STARTED(!) WAITING(!) | DONE(d!) CANCELED(c)
-#+CATEGORY: lv6
-
-* Failures spotted by non reg tests (13)
-
-** TODO Front-end error (1)
-   - State "TODO"       from ""           [2014-08-26 Tue 10:20]
-
- cat lus2lic*.log | grep "FAIL: without any option:" | sed s/'FAIL: without any option:'/-/
-
-1. ./lus2lic -o bug_map_fby.lic bug_map_fby.lus
- map<<fby, n>> pas supporté
-
-** TODO soc2c (2)
-   - State "TODO"       from ""           [2014-08-26 Tue 10:20]
-
-cat lus2lic*.log | grep "FAIL: Generate c code  :" | sed s/'FAIL: Generate c code  :'/-/
-
-1) ./lus2lic -2c should_work/cond01.lus -n cond01
-   the type of + in condact<<+,0>> is not inferred
-
-2) ./lus2lic -2c should_work/filter.lus -n filter
-  a false cycle is detected  
-   
-** TODO Divergences -exec et ecexe (4)
-   - State "TODO"       from ""           [2014-07-11 Fri 16:54]
-
- grep "FAIL:" lus2lic*.log | grep "exec" | grep "ecexe" | sed s/'FAIL: Try to compare lus2lic -exec and ecexe:'/-/
-
-
-1) ../utils/test_lus2lic_no_node should_work/filter.lus
-  spurious cycle detected (cf plus haut)
-
-2) ../utils/test_lus2lic_no_node should_work/Gyroscope.lus
-3) ../utils/test_lus2lic_no_node should_work/Gyroscope2.lus
-  #ERROR: Output takes on nil
-   c'est le ec qui a l'air fautif, car j'arrive a reproduire
-   le pb avec ecexe et lus2lic -exec semble fonctionner
-
-4) ../utils/test_lus2lic_no_node should_work/cond01.lus
-   cf plus haut (polymorphisme et iterateur)
-
-* lus2lic -2C
-** TODO lic2c : le jour ou on genere du code C, y'a peut-etre des trucs a recuperer
-   - State "TODO"       from ""           [2012-12-10 Mon 14:32]
-chez Cedric  Pasteur qui a  une implementation pour optimiser  la maj
-des tableaux
-http://www.di.ens.fr/~pouzet/bib/lctes12.pdf
-
-** TODO lic2c : Ca plante si un identificateur lustre comporte un "'"
-
-bin oui, ca n'est pas legal en C. Du coup je fais quoi ?
-Je rejete ?
-
-** TODO Reject file name that cannot be used to build valid C ident when using the -2c option
-   - State "TODO"       from ""           [2014-05-23 Fri 17:20]
-** TODO lic2c : Ca plante si un identificateur lustre se nomme double...
-   - State "TODO"       from ""           [2014-06-13 Fri 16:59]
-** TODO lic2c : types externes utilisés en I/O du main pas supportés
-
- file:test/should_work/simple.lus lus2lic -2c should_work/simple.lus -n simple
-    types externes
-
-faire comme pour _assign_EXT_TYPE en s'inspirant de ce que fait ec2c
-
-** TODO lic2c : slice en partie gauche pas traitée
-
-1. file:test/should_work/morel.lus lus2lic -2c should_work/morel.lus -n morel
-2. file:test/should_work/morel2.lus lus2lic -2c should_work/morel2.lus -n morel2
-3. file:test/should_work/morel3.lus lus2lic -2c should_work/morel3.lus -n morel3
-4. file:test/should_work/morel4.lus lus2lic -2c should_work/morel4.lus -n morel4
-5. file:test/should_work/left.lus lus2lic -2c should_work/left.lus -n left
-
-Quand ca sera corrigé, rétablir les tests correspondant dans
-file:~/lus2lic/test/site.exp (cf proc does_not_contain_left_slices)
-
-** TODO lic2c : polymorphisme
-   - State "TODO"       from ""           [2014-07-09 Wed 17:13]
- lus2lic -2c should_work/cond01.lus -n cond01
-
-echoue aussi en mode exec.
-
-Je devrais pourvoir accepter celui la, non ?
-
-** TODO Question : remettre en cause le choix de représentation des Soc.key ?
-   - State "TODO"       from ""           [2014-06-27 Fri 15:29]
-
-En effet, il ne reste plus que les ite à etre polymorphes, et c'est à cause des 
-soc polymorphes que je me trimbale le profile du soc dans les Soc.key !
-
-par ailleur,  l2lSplit ne devrait pas  splitter les ites, si  on veut
-pouvoir faire l'optimisation  qui consiste à n'executer  qu'une des 2
-branches si les noeuds ne font pas d'effet de bord. 
-
-** TODO nommage des soc à mémoires avec valeurs initiales
-
-Pour distinguer les  différentes instances de soc  à memoire (arrow
-et fby), j'utilise le hash de  leur valeur initiale, ce qui est faux,
-car hash n'est pas une injection.
-
-Est-ce la bonne approche ?   Une alternative serait de n'avoir qu'une
-seule soc  et de faire la  bonne initialisation en passant  la valeur
-initiale en argument de la fonction reset.
-
-Une autre solution serait d'utiliser un générateur de nom unique, par
-exemple basé sur un compteur.
-
-[...] sauf  qu'en fait, la fonction  de hash renvoie toujours  la meme
-valeur (bug) et que ca marche tres bien. Ce qui prouve bien que ca ne
-sert a rien cette affaire.
-
-* lus2lic -ec
-** le merge n'est pas expansé et ecexe ne le connais pas
-1. ./myec2c -o modes3x2_v4.c modes3x2_v4.ec
-2. ./myec2c -o modes3x2_v3.c modes3x2_v3.ec
-  -> le merge de type enum n'est pas expansé.
-
-3. ./myec2c -o test_merge.c test_merge.ec
-  -> genere un "when not clk" pas supporté pas ec
-
-* Packages, modeles, etc.
-** STARTED Il ne detecte plus les erreurs de type lors d'instanciation de noeuds
-   - State "STARTED"    from "TODO"       [2013-01-28 Mon 17:02]
-     cf échange de mails avec PAscal le 28/01/2013
-   - State "TODO"       from ""           [2012-12-21 Fri 11:08]
-#+begin_src sh
-cd test; ./lus2lic -vl 2 --nonreg-test should_fail/type/parametric_node2.lus
-#+end_src
-
-file:test/should_fail/type/parametric_node2.lus
-
-Ah bah oui, c'est écrit ici :
-file:src/ast2lic.ml::202
-
-   (* NOUVELLE VERSION ÉPURÉE :
-      ON ne fait AUCUNE vérif de cohérence de types pour les param statiques,
-      on ne vérifie QUE la nature (pour pouvoir résoudre les args qui sont des idents
-      A FAIRE + TARD ? !!
-   *)
-
-fixer le commentaire "OBSOLETE ET UN PEU FAUX"
- file:/~/lus2lic/src/lic.ml::440
-
-** TODO mauvais numero de ligne lors d'erreur d'instanciation de parametres de noeud
-   - State "TODO"       from ""           [2012-12-21 Fri 10:58]
-
-#+begin_src sh
-cd src; ../objlinux/lus2lic -vl 2 --nonreg-test should_fail/type/parametric_node.lus
-#+end_src
-
-   Opening file /home/jahier/lus2lic/test/should_fail/type/parametric_node.lus
-   Error in file "parametric_node.lus", line 4, col 17 to 17, token 'n':
-   can't eval type: bad array size, int expected but get real
-
-le message serait meilleur s'il indiquait la ligne 17 où l'erreur est effectuée
-
-file:src/astInstanciateModel.ml
-file:test/should_fail/type/parametric_node.lus
-
-* Testing process
-** TODO  Quand tous les test sont ok: comprendre pourquoi test_lus2lic_no_node et rdbg divergent
-   SCHEDULED: <2014-09-08 Mon>
-   - State "TODO"       from ""           [2013-12-10 Tue 13:37]
-En fait, c'est le bis qui semble avoir raison à chaque fois
-a voir quand j'aurais tous les tests qui passent
-
-pour voir la liste des tests que échouent : file:~/lus2lic/test/lus2lic.sum
-
-** STARTED [#B] utiliser rdbg -lurette a la place de lurettetop dans les test de non reg
-   SCHEDULED: <2014-11-03 Mon>
-   - State "STARTED"    from "TODO"       [2013-12-06 Fri 17:37]
-   - State "TODO"       from ""           [2013-11-27 Wed 18:18]
-
-Pour cela, il suffit de modifier le fichier file:~/lus2lic/test/site.exp
-
-ca marche, mais c'est plus lent (100->183s). c'est sans doute parce que
-je passe par des sockets.
-
-Il  faudrait passer  par  des cmxs  pour l'env  et  l'oracle, mais  ca
-complique un peu le script car il faut générer les bons cmxs. 
-
-[...]
-
-Voila, je passe  maintenant par des cmxs. Malheureusement,  je passe à
-300s car je passe pas mal de temps  à generer ces cmxs, et comme je ne
-fais que 10 step à chaque fois, c'est cet aspect qui domine...
-
-Bon, sinon, si on regarde juste nested.lus, sur 10 pas, l'overhead a l'air
-d'etre autour de 2%
-
-
-Sur plus.lus pendant 10000 steps, j'ai
-|--------------+------|
-| rdbg -socket | 9:44 |
-| rdbg -cmxs   | 8:40 |
-| lurettetop   | 4:00 |
-|--------------+------|
-
-Sur nested.lus pendant 10 steps, j'ai : 
-|--------------+----------|
-| rdbg -socket | 64s      |
-| rdbg -cmxs   | 185s !!! |
-| lurettetop   | 53.3s    |
-|--------------+----------|
-
-Comment c'est possible ce truc ???!!!
-
-nested.ec possede  certes plus  de 7000 variables  (dont pres  de 6000
-sont locales), du coup manipuler des  listes n'aide pas. Mais c'est le
-cas pour les 3.
-
-Le mode socket ne transmet pas les var locales, d'ou la difference ?
-
-Est-ce une bonne idée d'utiliser  des listes d'ailleurs. au niveau des
-mli, peut-etre.  Mais je devrais  peut-etre m'en affranchir  plus vite
-pour traiter ce genre d'exemple...
-
-** TODO Testing node with enums don't work
-   - State "TODO"       from ""           [2013-05-28 Tue 14:46]
-
-indeed, ec requires they are extern const, and lus2lic requires to have int
-
-- one solution would be that -eei generates correct ec, by inlining constant
-- I could also add enums in Lutin
-
-Actually, I should do both...
-
-../utils/test_lus2lic_no_node should_work/enum0.lus     
-
-en fait, l'option --gen-auto-test traduit les types enums en entier ; du coup
-l'appel depuis l'oracle au noeud à tester est mal typé...
-
-** TODO Écrire un test qui mette en jeu exhaustivement tous les operateurs
-   - State "TODO"       from ""           [2013-03-19 Tue 10:38]
-** TODO try to compile the C code resulting from ec2c at some point
-   - State "TODO"       from ""           [2013-01-18 Fri 23:12]
-in particular, are nodes using extern nodes generated properly?
-
-** TODO les (nouveaux) tests ne capturent pas les changements de # lignes dans les should_fail
-   - State "TODO"       from ""    [2013-01-11 Fri 11:15]
-
-** TODO Nommage des variables fraiches : Reprendre LicVarName.ml
-   - State "TODO"       from ""           [2013-01-16 Wed 18:03]
-car c'est completement n'importe quoi (j'ai réussit a faire des clashs
-entre les var inventées dans split et dans ExpandNodes !!)
-
-Pascal a introduit un mecanisme qui shunte LicName -> en discuter avec lui.
-
-** TODO Il faudrait traiter proprement les programmes lutin (et lustre) qui débordent (int)
-   - State "TODO"       from ""           [2013-05-10 Fri 17:28]
-
- ../utils/test_lus2lic_no_node should_work/test_node_expand.lus
- ../utils/test_lus2lic_no_node should_work/test_node_expand2.lus
-** TODO au sujet des tests de non-regression
-   - State "TODO"       from ""           [2013-04-23 Tue 17:31]
-
-Actuellement, test_lus2lic_no_node, je compare lus2lic -ec + ecexe et lus2lic -exec. 
-
-Ca serait bien de  faire la meme chose en passant  par lus2lic -lv4 +
-lus2ec voir.
-
-** TODO lus2lic -ee -exec devrait utiliser des enums (a la ecexe)
-   - State "TODO"       from ""           [2013-05-07 Tue 16:36]
-
-** TODO le test des programmes packagés ne fonctionne pas
-   - State "TODO"       from ""           [2013-05-10 Fri 10:52]
-modifer
-file:~/lus2lic/utils/test_lus2lic_no_node
-
-** TODO quand une assertion est violée dans ecexe, ca fait des trucs zzardbi dans lurette
-   - State "TODO"       from ""           [2014-09-04 Thu 13:46]
-
-par exemple, decommenter le assert dans file:test/should_work/test_node_expand2.lus
-et lancer
-   /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node should_work/test_node_expand2.lus 
-
-il dit 'A SUT input is missing: o1'
-tout en cachant la vraie erreur (assert error)
-
-* Divers
-** TODO lv4 enum types are not compatible with lutin ones
-   - State "TODO"       from ""           [2014-03-28 Fri 15:49]
-For lv6, it's ok, so, well...
-
-I'd need to add support for enums in Lutin to fix this one.
-
-
--> Or the -eei option could do something else (inlining const definition)
-indeed, -ec -eei generates ec code that is not syntactically correct for ecexe.
-
-Should I do this (const inlining) with 'ec -eei only ? it seems fair enough
-
--> Other idea. Go though V4 and lus2ec.
-
-** TODO lus2lic : reprendre unifyClock.ml proprement
-   SCHEDULED: <2014-11-10 Mon>
-   - State "TODO"       from ""           [2013-09-24 Tue 16:35]
-cf  file:~/lus2lic/src/unifyClock.ml
-http://www.cs.cornell.edu/courses/cs3110/2011sp/lectures/lec26-type-inference/type-inference.htm
-
-** TODO Soc2cIdent.key_op2str est faux
-   - State "TODO"       from ""           [2014-08-13 Wed 17:33]
-** TODO Extern and ec
-
-lus2lic should_work/decl.lus -n decl -ec 
-
-generates incorrect ec code instead of raising an error.
-
-** TODO Revoir le nommage des instances de noeuds parametriques
- par ex, pour should_work/NONREG/param_struct.lus
- ca invente des noms bien débiles du point de vue du nom du pack.
- Style 'mk_tab__param_struct::toto_toto_3'
- alors qu'aucun package ne s'appelle 'mk_tab__param_struct'
-
-** TODO le with devrait opérer sur une val_exp, pas sur un ident.
-   - State "TODO"       from ""           [2013-02-12 Tue 18:31]
-
-** TODO l2lCheckOutputs.ml  Unbound value VarMap.bindings
-en mode cross-win32 car pas defini en 3.11
-   - State "TODO"       from ""           [2013-02-22 Fri 08:27]
-** TODO Découper un peu les fonctions dans src/lic2soc.ml
-   - State "TODO"       from ""           [2013-03-19 Tue 10:26]
-le role et le perimetre get_leaf en particulier n'est pas clair.
-de plus son code est dupliqué.
-file:src/lic2soc.ml
-
-** TODO pb sur le GYRO : bug dans le prog ou dans le compilo ???
-   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
-
- ../utils/test_lus2lic_no_node should_work/Gyroscope2.lus
- ../utils/test_lus2lic_no_node should_work/Gyroscope.lus
-
-si je lance ecexe dessus, j'obtiens un 
-    "#ERROR: Output takes on nil"
-au step 3
-Mais curieusement, via lus2lic -exec, je n'ai pas de soucis.
-
-* Pas clair
-** WAITING Regarder si on pourrait se passer du PREDEF_CALL (et de passer par le  CALL normal)
-   - State "WAITING"    from "STARTED"    [2013-02-06 Wed 17:14]
-   - State "STARTED"    from "TODO"       [2013-02-06 Wed 17:14]
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-cf file:./src/lic.ml::206
-
-Mouais. C'est pas clair. Si on regarde par exemple ici :
-   file:src/ast2lic.ml:407
-On voit qu'on n'y fait pas le même traitement.
-À voir avec Pascal.
-
-** TODO Dans file:src/eff.ml::195 on pourrait virer la notion de call by name
-qui  ne sert  que pour  les  structures. Mais  au niveau  du Eff,  on
-pourrait s'en être  débarrassé au profit d'un appel  par position. A
-faire au moment de la compilation des expressions.
-
-question : est-ce que cela nous  prive d'une optim pour le traitement
-du with ?
-comment fait caml ?
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-
-
-** TODO operateurs iterables 
-  - State "TODO" from "" [2012-03-30 Fri 17:03]
-- mettre dans la doc 
-- voir si on ne pourrait pas completer la liste
-en mettant tous les operateurs unaires de 
- file:~/lus2lic/src/syntaxTreeCore.ml::91 
-dans 
- file:~/lus2lic/src/predef.ml::62
-- tout au moins, eviter les assert false sur
-#+BEGIN_CENTER lustre :exports bug_map_fby.lus
-type state = struct {
-   idy : int;
-   leader : int;
-   level : int
-};
-const n=5;
-const inits = [
-   state { idy = 33; leader =  5; level = 2} ,
-   state { idy = 41; leader =  5; level = 3} ,
-   state { idy = 21; leader =  5; level = 4} ,
-   state { idy = 10; leader = 10; level = 0} ,
-   state { idy = 75; leader = 75; level = 0}
-] ;
-const O = false;
-const I = true;
-const connect = [
-   [ O, I, O, O, I ],
-   [ I, O, I, O, O ],
-   [ O, I, O, I, O ],
-   [ O, O, I, O, I ],
-   [ I, O, O, I, O ]
-];
-node algo (clk: bool; ps: state; neigh: bool^5) returns (ns: state);
-let
-   ns = if clk then
-         state { idy =  ps.idy ; leader = ps.leader; level = ps.level + 1 }
-      else
-         state { idy =  ps.idy ; leader = ps.leader; level = ps.level };
-tel
-node simu(ck:bool^5) returns (s: state^n);
-var ps : state^n;
-let
-   ps = map<<fby, 5>>(inits, s);
-   s = map<<algo, n>> (ck, ps, connect);
-tel
-#+END_CENTER
-
-bon, y'a plus d'erreur, mais ca ne compile pas. Est-ce choquant ?
- 
-** TODO Verifier les boucles combinatoires meme quand on ne genere pas de ec
-   - State "TODO"       from "STARTED"    [2013-01-29 Tue 09:49]
-
-  ./lus2lic should_fail/semantics/deploop.lus
-
-On pourrait utiliser   file:src/misc.ml pour prendre finement en compte les 
-struct et les arrays.
-
-** TODO Faut-il jeter ces self loop ? Sans doute pas.
-   - State "TODO"       from ""           [2013-05-10 Fri 17:44]
-../utils/test_lus2lic_no_node should_work/filter.lus
-../utils/test_lus2lic_no_node should_work/activation2.lus
-../utils/test_lus2lic_no_node should_work/activation1.lus
-../utils/test_lus2lic_no_node should_work/speedcontrol.lus
-
-solution : 
-l2lSplit: split access of access in left parts.
-
-indeed, consider the following example:
-
-   z.y.y = z.x.x;
-
-which is fine. But if we transform it into
-
-   z.y.y = v0.x;
-   v0 = z.x;
-
-
-we have a cycle !!!
-
-but what if we split further, it's fine again
-
-   v1 = z.y
-   v1.y = v0.x;
-   v0 = z.x;
-
--> split more !
-
-** TODO Enlever Abstract_type_eff de Lic.type_ ou vérifier partout que c'est correct.
-   - State "TODO"       from ""           [2012-12-20 Thu 17:26]
-dans lic.ml, on definit les types compilés ainsi :
-and type_ =
-  | Bool_type_eff
-  | Int_type_eff
-  | Real_type_eff
-  | Abstract_type_eff of Ident.long * type_
-  | Array_type_eff    of type_ * int
-  ...
-
-Mais est-ce vraiment utile de garder le Abstract_type_eff à ce niveau ?
-
-en effet, ca oblige à traiter les 2 cas en permanence (par ex lors des
-transfos l2l).
-
-Pascal suggere carrément de 
-- definir un type 
-
-#+begin_src ocaml
-type type_ref of string 
-#+end_src
-- transformer les expressions lic de telle sorte que il n'y ait plus 
-  de type_ mais juste des type_ref
-
-Car en fait, actuellement, le type Lic.type_ sert à faire la verif de
-type et  a representer le type  des expressions lic. Du  coup le type
-des expressions est inutilement  compliqué; d'ou l'idée d'avoir juste
-des  "type_ref of  string" (Ce  qui  simplifiera (?)  le travail  des
-passes ultérieures, style lic2c).
-
-Bon, je ferai  ca quand tous les tests fonctionneront  et pendant que
-j'essairais de me passer de ulglyStuff/id_solver. A voir aussi ce qui
-sera  le  plus  pratique  quand  je me  remettrai  à  bosser  sur  le
-lic2c/licexe
-
-
-Autre idée : Dans LicPrg, ne plus utiliser de Lic.type_ mais des 
-LicPrg.type_ (=string)
-+ une table  LicPrg.type_ -> Lic.type au cas où
-
-l2lAliasTypes fait plus au moins le boulot. Faudrait intergrer cette
-passe à la fonction qui construit le LicPrg initial.
-
-boarf  ; ca  fait beaucoup  de bazard  pour pas  grand chose.  Ce qui
-simplifierait les  choses pour la  suite, c'est  de ne plus  avoir de
-Lic.type_ du tout dans les val_exp et autre.
-
-Autre idée  : je fais  ca lors du passage  à la structure  de données
-suivante (soc). Oui, ca fait du sens. en plus, les l2l* utilisent les
-infos Lic.type_, donc autant attendre un peu avant de s'en passer.
-
-
-** TODO C'est normal qu'il se plante au step 2 celui la ???
-   - State "TODO"       from ""           [2013-05-31 Fri 16:42]
- ../utils/test_lus2lic_no_node should_work/sincos.lus
-
- 
-
-
-
-* a classer
-
-** Fix 'make rel-test'  in release-v6 dir
-** bug clock tim
-   - State "TODO"       from ""           [2013-09-23 Mon 11:13]
-
-donc c'est file:~/lus2lic/src/l2lExpandNodes.ml le coupable on dirait
-en effet, quand on ne branche que l'expansion de noeud
-     ~/lus2lic/objlinux/lus2lic   ~/xxx/test.lus -n verify -en > xxx.ec
-on obtient
-
-    uw1:bool when cw;   ici 3
-   _u1_5:bool when cr;  ici 1
-puis
-   _u1_5 = uw1;
-ce qui ne peut pas marcher...
-
- ===> creating _uw1_1 from uw1 with clock  on true(cw) on base
- ===> creating _u1_5 from u1 with clock  on true(cr) on base
-
-uw1 : bool when cw;
-u1 : bool when cw;
-
-c'est donc _u1_5 qui n'est pas sur la bonne horloge ?
-
-a l'appel de
-    OK2 = (mem(cr, ur1) = mem(cw, uw1));
-ne se prendrait-il pas les pieds dans le tapi ?
-
-car _u1_5 est créé lors de l'un de ces 2 appels
-
-[...]
-
-bon, si dans mem je renomme cw en clk, ca marche !!!
-c'est un probleme de clash de nom de variable !!!
-
-[...]
-
-Finalement, le pb est plutot la il semblerait :
-file:~/lus2lic/src/evalClock.ml::83
-
-** Generate macro for simple predef op in -2c mode.
-** Add a --2c-stack that favor the use of stack vs heap
-
-indeed, currently, a soc call is done like that
-
-#+BEGIN_SRC C
-  set_input(ctx, i1);
-  step(ctx);
-  get_output(ctx,o1);
-#+END_SRC 
-
-by using the stack, I mean something like
-
-#+BEGIN_SRC C
-  step(i,o);
-#+END_SRC
-
-** in Soc2cextern.cpy_def: shouldn't I use macro instead of function to be consistent ?
-file:~/lus2lic/src/soc2cExtern.ml::28
-
-I could even define a default version using memcpy as for arrays BTW.
-
diff --git a/todo.org_archive b/todo.org_archive
deleted file mode 100644
index fc122154026a0b4dbadf4dda3a04d358e24b2599..0000000000000000000000000000000000000000
--- a/todo.org_archive
+++ /dev/null
@@ -1,1374 +0,0 @@
-#    -*- mode: org -*-
-
-
-Archived entries from file /home/jahier/lus2lic/todo.org
-
-* TODO Mettre à jour le tout nouveau file:README.org wrt src
-  SCHEDULED: <2012-12-10 Mon>
-  - State "TODO"       from ""           [2012-12-10 Mon 17:02]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2012-12-13 Thu 15:37
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO Renommer tous les modules et faire du ménage
-  SCHEDULED: <2012-12-10 Mon>
-  - State "TODO"       from ""           [2012-12-10 Mon 16:55]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2012-12-13 Thu 15:37
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO rebrancher le nodeExpand.ml et structArrayExpand.ml
-   SCHEDULED: <2012-12-20 Thu>
-   - State "TODO"       from ""           [2012-12-10 Mon 16:55]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2012-12-20 Thu 17:23
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-file:src/l2lExpandNodes.mli
-file:src/l2lExpandArrays.mli
-
-que Pascal les a débranché lors de son ménage d'été.
-
-* TODO Pascal a shunté mon LicName dans split. Avait-il (une bonne) raison ?
-   SCHEDULED: <2012-12-20 Thu>
-   - State "TODO"       from ""           [2012-12-17 Mon 16:37]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2012-12-20 Thu 17:23
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-par ex, file:~/lus2lic/src/l2lExpandArrays.ml::50
-dois-je faire comme lui ou comme avant ?
-
-* TODO le mode ec genere tous les noeuds (ce que n'aime pas ec2c)
-  - State "TODO"       from ""           [2013-01-11 Fri 09:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-11 Fri 18:15
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO il ne faut pas générer l'alias de type en ec
-   - State "TODO"       from ""           [2013-01-11 Fri 09:41]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-11 Fri 18:15
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-file:/tmp/t0.ec
-
-* TODO y'a un List.fold_left2 qui plante
-   - State "TODO"       from ""           [2013-01-11 Fri 10:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-16 Wed 16:30
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-oops: lus2lic internal error
-File "objlinux/l2lExpandNodes.ml", line 131, column 4
-when compiling lustre program should_work/test.lus
-file:test/should_work/test.lus
-file:~/lus2lic/src/l2lExpandNodes.ml::131
-
-
-* TODO Ya un probleme avec ce fichier lustre (compilait avant)
-   - State "TODO" from "" [2013-01-07 Mon 16:20]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-17 Thu 10:57
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-../objlinux/lus2lic   should_work/lionel/triSel.lus   -en -ei -o /tmp/xxx.lus
-
-* TODO le -o ne fonctionne plus
-  SCHEDULED: <2013-01-07 Mon>
-  - State "TODO"       from ""           [2013-01-07 Mon 14:28]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-17 Thu 10:57
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Urgent
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO pb dans la verif de définition unique de variable en mode -en
-   - State "TODO"       from ""           [2013-01-11 Fri 09:49]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-17 Thu 10:58
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-file:~/lus2lic/testsuite/should_work/heater_control.lus::39
-
-* TODO Regression dans le mode -ec
-   - State "TODO"       from ""           [2013-01-11 Fri 09:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-17 Thu 10:59
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-undefined new var :
-file:testsuite/should_work/Gyroscope2.lus
-file:/home/jahier/lus2lic/testsuite/should_work/deSimone.lus::47
-
-var defined twice:
-file:/home/jahier/lus2lic/testsuite/should_work/heater_control.lus
-
-Peut-etre est-ce  lié au pb  précédent ? plus  précisement, peut-etre
-que le bug existait  mais qu'on ne le voyait pas  car tous les noeuds
-n'étaient pas générés ?
-
-Quoiqu'il en soit, c'est interessant de tester tous les noeuds ce que
-ne font pas mes scripts tcl en l'état.
-
-* TODO internal error in l2lExpandArrays.ml with -esa
-   - State "TODO"       from ""           [2013-01-18 Fri 10:48]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-18 Fri 18:01
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-./lus2lic -esa -o /tmp/ply02.ec  should_work/broken/ply02.lus
-
- oops: lus2lic internal error
-File "objlinux/l2lExpandArrays.ml", line 213, column 14
- when compiling lustre program file:test/should_work/broken/ply02.lus
-
-nb : le mode -en ne marche pas bas bien non plus...
-
- ./lus2lic -en -o /tmp/ply02.ec  should_work/broken/ply02.lus
- Error in file "/home/jahier/lus2lic/test/should_work/broken/ply02.lus", line 8, col 2 to 2, token 'o': 
- Variable o is already defined.
-
-ok : it was dut to a bug in l2lRmPoly.ml: var types were not susbtituted in "Lic.left".
-
-* TODO Refaire marcher les tests de non-reg qui sont cassés 
-   SCHEDULED: <2013-01-07 lun.>
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:17
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-suites aux modifs de Pascal de l'été 2012
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-
-En fait, ce qui est cassé, c'est surtout le -ec puisqu'il n'a pas
-rebranché l'expansion de tableau et de noeud.
-
-il a fait 
- - mv tests _tests
- - mkdir tests
- - cp _tests/Makefile tests
- - créer des tests qu'il a mis dans  tests...
-
-* DONE compat pb with array type def
-   - State "DONE"       from "WAITING"    [2013-01-21 lun. 09:28]
-   - State "STARTED"    from "WAITING"    [2013-01-21 lun. 09:27]
-   - State "TODO"       from ""           [2013-01-19 Sat 09:40]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:29
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: DONE
-  :END:
-file:test/should_work/broken/pfs.lus::43
-./lus2lic -ec -o /tmp/pfs.ec should_work/broken/pfs.lus
- Error in file "/home/jahier/lus2lic/test/should_work/broken/pfs.lus", line 43, col 22 to 22, token '[':
- syntax error
-
-It's not clear it should be valid  v6: i put it into the to_sort dir.
-
-* TODO autoriser les , dans les structures ?
-   - State "TODO"       from ""           [2013-01-19 Sat 09:56]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:30
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-./lus2lic -o /tmp/Gyro.out should_work/broken/Gyro.lus
- Error in file "/home/jahier/lus2lic/test/should_work/broken/Gyro.lus", line 11, col 42 to 42, token ',':
-
-
-* TODO mixing v6 packages and v4 implicit package does not work. Should it?
-   - State "TODO"       from ""           [2013-01-19 Sat 09:36]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:32
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Regressions introduites par Pascal
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- ./lus2lic -o /tmp/old_style_and_pack.out should_work/broken/old_style_and_pack.lus
-Error in file "/home/jahier/lus2lic/test/should_work/broken/old_style_and_pack.lus", 
-line 17, col 1 to 4, token 'node':
-
-file:test/should_work/broken/old_style_and_pack.lus
-
--> to_sort
-
-* TODO Mettre le sha dans l'affichage de --version
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:40
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Pas dur
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END: 
-car c'est plus facile dans git pour retrouver ses petits
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-
-* TODO Changer la facon de numeroter les versions dans lus2lic (faire comme dans lurette)
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-21 lun. 09:43
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Vieux trucs (?)
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-  [2010-11-08 Mon]
-* TODO Verifier les boucles combinatoires
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-24 Thu 09:13
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Languages issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END: 
-quand on genere du ec (car ec2c ne fait pas la verif !)
-   [2010-06-07 Mon]
-
-On pourrait peut-etre le faire en modifiant celui la : file:src/l2lCheckOutputs.ml ?
-
-* TODO pb d'instance de package ???
-   - State "TODO"       from ""           [2013-01-19 Sat 09:43]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-25 Fri 11:25
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Packages, modeles, etc.
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- ./lus2lic  -o /tmp/packages.out should_work/broken/packages.lus
- ./lus2lic -ec -o /tmp/packages.ec should_work/broken/packages.lus
- Error in file "/home/jahier/lus2lic/test/should_work/broken/packages.lus", line 22, col 27 to 29, token 'int':
- syntax error
-
-file:test/should_work/broken/packages.lus::22
-
-ok : c'etait juste un pb de syntaxe (depuis toujours vraisemblablement...)
-
-* TODO instanciation de noeuds ne marche pas ? 
-   - State "TODO"       from ""           [2013-01-19 Sat 10:02]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-29 Tue 09:37
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Packages, modeles, etc.
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-./lus2lic -o /tmp/multipar.out should_work/broken/multipar.lus
-file:test/should_work/broken/multipar.lus::20
- Error in file "/home/jahier/lus2lic/test/should_work/broken/multipar.lus", line 20, col 12 to 12, token 'g':
- unknown node: g
- known nodes are: sil, bok, gup, lis
-
-FAIL: without any option: ./lus2lic {    -o /tmp/multipar.out should_work/broken/multipar.lus} 
-* TODO Condact is not working
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-29 Tue 16:31
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Languages issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- file:test/should_work/broken/cond01.lus
-   - State "TODO"       from ""           [2013-01-18 Fri 23:18]
- ./lus2lic -ec -o /tmp/cond01.ec should_work/broken/cond01.lus
-
- oops: lus2lic internal error
-	File "objlinux/l2lExpandMetaOp.ml", line 310, column 4
- when compiling lustre program should_work/broken/cond01.lus          
-
-* TODO Merge is not working
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-01-31 Thu 17:52
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Languages issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-./lus2lic should_work/broken/merge.lus 
-file:test/should_work/broken/merge.lus::7
-
-* TODO fix unresolved tests (timeout -> performance bugs)
-   - State "TODO"       from ""           [2013-01-11 Fri 11:04]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-04 Mon 21:33
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-par ex,  file:./test/should_work/ec.lus prend  un temps  infini alors
-qu'il n'est pas si gros (y'a  500 variables, mais bon).  bon, en fait
-il prend 26 secondes, ce qui n'est  pas infini, mais bien long tout de
-meme.
-
-nb: c'était deja le cas avant les changements de Pascal.
-
-cf file:test/lus2lic.gprof
-69% du temps est passé dans unify clock !!!!!
- 
-J'ai l'impression que  c'est lié au fait que ce  programme ne definit
-que  des  contantes.   Or  les constantes  sont  potentiellement  sur
-n'importe quelle horloge, ce qui fait que l'algo manipule un gros paquet
-de 'clock_var of int' et que l'on passe beaucoup de temps à faire des 
-apply_substs2
-
-cf file:test/perf/ contenant les resultats de gprof et ocamlprof sur ec.lus
-
------> ca y est, j'ai trouvé : encore une histoire de Verbose pas lazy !!!
-
-* TODO Certains programmes dans should_fail n'echouent qu'en ec (ou bien c'est ec2c) ou l'inverse
-   - State "TODO"       from "STARTED"    [2013-01-23 Wed 18:26]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-06 Wed 16:09
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-du coup les stats sont un peu fausses. a revoir.
-
-* TODO on devrait se passer de 'static_arg list' pour le champ =PREDEF_CALL=
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-06 Wed 17:06
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END: 
-(c'est censé marcher)
-cf file:./src/lic.ml::206
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-
-
-* TODO le Eff.WITH (aka if statique) n'a pas lieu d'être !
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-06 Wed 17:57
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-y virer !!
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-
-* TODO const_to_val_eff n'a vraiment rien à faire dans UnifyClock !!!
-
-   - State "TODO"       from ""           [2013-01-29 Tue 14:26]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-07 Thu 09:42
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-file:src/unifyClock.ml::271
-
-mouarf, pourquoi pas en fait.
-
-* TODO aucune fonction dans Lic.*_to_string ne devrait dependre des options de compil
-   - State "TODO"       from ""           [2013-02-01 Fri 17:54]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-07 Thu 09:54
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-cf le XXX  file:src/lic.ml::655
-
-* TODO Rajouter le with à la caml pour les structures
-  - State "TODO"       from ""           [2012-10-26 Fri 14:59]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-07 Thu 16:10
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Languages issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-main peut-on l'appeller with ?
-file:test/should_work/struct_with.lus
-
-
-* TODO Refaire une passe pour virer une fois pour toute cette histoire d'idref dans Eff.
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-13 Wed 09:22
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-    cf file:/~/lus2lic/src/lic.ml::189
-QU: Pascal l'a fait ?
-    
-
-En fait, il y a 3 types d'idents
-- long : 
-  + pack+nom
-  + Sert à dénoter les items (node/type/const) externes au pack courant
-
-- t : 
-  + juste le nom
-  + Sert à dénoter les items locaux  au pack courant + les variables 
-
-- idref :  
-  + le pack est en option
-  + utile dans les premieres phases de la compil
-  + actuellement utilisé  comme machin pour ranger des  trucs dont on
-    ne  sait pas  trop s'il  s'agit  d'Ident.t ou  Ident.long et  qui
-    permet d'entretenir une  espece de flou désagréable  dans le code
-    et mon esprit...
-
-
-les  idref sont  sensé disparaitre  une fois  que tous  les problemes
-d'identificateurs  ont   été  résolu  (ce   qui  n'est  pas   le  cas
-actuellement).
-
-Le Lic.id_solver est  là pour résoudre les ident.t  ; bizzarement, il
-prend en entrée ces fameux idref  que je voudrais voir disparaitre de
-Lic.
-
-Le truc, c'est que cet id_solver  permet aussi de récuperer des infos
-sur les long, d'ou le idref qui est plus versatile...
-
-sol 1 : dupliquer id2const, id2type, etc et créer des long2const, etc.
-du coup, plus d'idref ! 
-
-* TODO Définir les fonctions de UglyStuff proprement
-   - State "TODO"       from ""           [2012-12-10 Mon 16:38]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-13 Wed 09:23
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-file:~/lus2lic/src/uglyStuff.ml
-bon j'y ai mis dans IdSolver ; c'est pas si choquant maintenant que
-ces fonctions ne sont plus dans Lic.
-
-* TODO definir un Lic.STRUCT_WITH plutot que de passer par un type option
-  - State "TODO"       from ""           [2013-02-12 Tue 18:32]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-13 Wed 09:31
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO Mettre tout les val_exp dans les operand dans Lic
-   - State "TODO"       from ""           [2013-02-12 Tue 18:30]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-13 Wed 11:16
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Aesthetes issues
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-XXX essayer de virer le constructeur Oper qui n'a pas l'air de servir à grand chose
-* STARTED Intégrer le résultat de mly2bnf dans le manuel
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-02-13 Wed 14:15
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: STARTED
-  :END: 
-* TODO tableaux (hat, array, etc)
-  - State "TODO"       from ""           [2013-03-19 Tue 10:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-03-22 Fri 10:25
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO diese et nor
-  - State "TODO"       from ""           [2013-03-30 Sat 14:31]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-02 Tue 10:21
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO meta operateurs
-  - State "TODO"       from ""           [2013-03-19 Tue 10:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-02 Tue 10:37
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO when, current
-  - State "TODO"       from ""           [2013-03-19 Tue 10:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-03 Wed 08:50
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO merge
-  - State "TODO"       from ""           [2013-03-19 Tue 10:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-05 Fri 15:13
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO fby
-  - State "TODO"       from ""           [2013-04-04 Thu 17:10]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-05 Fri 15:13
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO condact
-  - State "TODO"       from ""           [2013-03-19 Tue 10:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-05 Fri 17:23
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-
-* TODO Traiter la fleche plus proprement.
-   - State "TODO"       from ""           [2013-04-02 Tue 08:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-08 Mon 13:07
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-En fait il me suffirait de m'inspirer de ce que j'ai fait dans le condact
-avec la variable "first_instant" !!!
-
-* TODO Translate the fby properly into a soc 
-   - State "TODO"       from ""           [2013-04-04 Thu 17:10]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-08 Mon 13:07
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-vs "-> pre" as it is done actually in file:~/lus2lic/src/ast2lic.ml::468
-
-* TODO slice
-  - State "TODO"       from ""           [2013-04-05 Fri 11:18]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-08 Mon 13:27
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO Unifier les modules Data de Lustre V6 et Lutin
-   - State "TODO"       from ""           [2013-04-02 Tue 08:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-17 Wed 10:52
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-ie. rajouter les tableaux, struct, et enum en lutin quitte à ne pas s'en servir
-tout de suite.
-
-Ca va facilité l'utilisation sans duplic de code du module rif_base
-* TODO revoir l'intégration à rif_base et genlex
-  - State "TODO"       from ""           [2013-03-19 Tue 10:25]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-17 Wed 10:52
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-* TODO Integrer ce mode -exec dans lurette, à la facon dont je l'ai fait pour Lutin
-   - State "TODO"       from ""           [2013-03-30 Sat 14:35]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-17 Wed 10:53
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-Question : comment j'integre ? via un lus2lic.a ?
-
-file:~/lurette/source/common/lustreRun.mli
-
-* TODO Trouver un moyen d'automatiser des tests
-   - State "TODO"       from ""           [2013-03-19 Tue 10:35]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-04-23 Tue 16:54
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-via lurette ?
-en comparant le mode -exec avec le résultat obtenu via ec puis ec2c
-
-faudrait rajouter une option dans lurette qui, en cas de variables 
-manquantes, genere le programme lutin qui va bien (loop true) plutot
-que de lancer luciole
-
-Un truc de ce gout là semble fonctionner :
-
-
- ./lus2lic  _trivial3_condact_oracle.lus -n trivial3_condact_oracle -ec > trivial3_condact_oracl
-
-
-./lus2lic trivial3.lus -n trivial3_condact --gen-autotest
-./lus2lic trivial3.lus -n trivial3_condact -ec >> _trivial3_condact_oracle.lus
-./lus2lic  _trivial3_condact_oracle.lus -n trivial3_condact_oracle -ec > trivial3_condact_oracle.ec
-~/lurette/bin/lurettetop -rp "sut:v6:trivial3.lus:trivial3_condact" -rp "env:lutin:_trivial3_condact_env.lut" -rp "oracle:ec:trivial3_condact_oracle.ec:" -go 
-
-Reste à l'integrer dans file:test/lus2lic.tests/non-reg.exp
-
-* TODO assert violation  ~/lus2lic/src/socExecValue.ml::239
-   - State "TODO"       from ""           [2013-05-10 Fri 17:38]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-14 Tue 16:38
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- ../utils/test_lus2lic_no_node should_work/X3.lus
-
-* TODO assert violation  ~/lus2lic/src/socExecValue.ml::267
-   - State "TODO"       from ""           [2013-05-10 Fri 17:38]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-16 Thu 09:06
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-../utils/test_lus2lic_no_node should_work/is_stable.lus
-
-* TODO oops: lus2lic internal error
-   - State "TODO"       from ""           [2013-05-14 Tue 14:35]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-16 Thu 13:50
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-	File "objlinux/lic2soc.ml", line 648, column 14
-
-./lus2lic should_work/noeudsIndependants.lus -n noeudsIndependants --gen-autotest -np
-
-C'est parce que il y a un clash avec Lustre::gt qui est polymorphe,
-et donc l'alias vers gt ne genere pas de code...
-
-Il faudrait vraiment que je trouve un moyen de ne pas remplir les tables avec
-le contenu du module Lustre de facon strict (ie, le faire lazy !!)
-
-cf file:src/licTab.ml::68
-
-Bon, finalement, j'oblige les gens a ecrire Lustre::gt et puis ca marre.
-
-* TODO oops: lus2lic internal error
-   - State "TODO"       from ""           [2013-05-10 Fri 17:46]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-21 Tue 09:31
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-	File "objlinux/lic2soc.ml", line 680, column 18
- when compiling lustre program should_work/morel3.lus
--> It was due to a bad handling in slices apprearinf at the lhs od equations.
-* TODO pb avec -en sur programme avec des when
-   - State "TODO"       from ""           [2013-05-21 Tue 11:10]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-21 Tue 17:30
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- ./lus2lic _ck5_oracle.lus -n ck5_oracle  -en
-
-* oops: lus2lic internal error
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 13:55
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-	File "objlinux/data.ml", line 114, column 15
- when compiling lustre program should_work/left.lus
-
- ./lus2lic should_work/left.lus -exec 
-
-* oops: lus2lic internal error
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 13:56
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-	File "objlinux/data.ml", line 114, column 15
- when compiling lustre program should_work/left.lus
-
- ./lus2lic should_work/left.lus -exec 
-
-* TODO oops: lus2lic internal error
-   - State "TODO"       from ""           [2013-05-10 Fri 18:05]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 13:56
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-	File "objlinux/lic2soc.ml", line 680, column 18
- when compiling lustre program should_work/left.lus
-
-
-* TODO internal error
-   - State "TODO"       from ""           [2013-05-10 Fri 17:19]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 15:52
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-	File "objlinux/unifyType.ml", line 106, column 3
- ../utils/test_lus2lic_no_node should_work/t1.lus
-
-file:src/unifyType.ml::110
-
-* TODO Fix a bug occurring using -en and -esa together.
-   - State "TODO"       from ""           [2013-04-24 Wed 09:22]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 16:10
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-#+begin_src sh
-./lus2lic _assertion_oracle.lus -n assertion_oracle   -en  -esa
-#+end_src
-
-** Error in file "/home/jahier/lus2lic/test/_assertion_oracle.lus", line 38, col 3 to 7, token 'v02_1':
-** 
-** Variable _0v02_1_1 is already defined.
-#+end_src
-
--> on verra ca quand les autres  test passeront ; je ferai alors une passe
-complete qur le nommage des variables fraiches.
-
-
-* Performances
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 16:24
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-Ceux là sont particulierement long (dont certains vraiment sans raison)
-en fait, quand ecexe se plante (oracle), il bloque tout le monde...
-
-
-
-# of unresolved testcases	12
-
-../utils/test_lus2lic_no_node should_work/assertion.lus
-../utils/test_lus2lic_no_node should_work/normal.lus
-../utils/test_lus2lic_no_node should_work/Gyroscope2.lus
- ../utils/test_lus2lic_no_node should_work/ELMU.lus
- ../utils/test_lus2lic_no_node should_work/aux.lus
-../utils/test_lus2lic_no_node should_work/X1.lus
-../utils/test_lus2lic_no_node should_work/alarme.lus
-../utils/test_lus2lic_no_node should_work/onlyroll2.lus
-../utils/test_lus2lic_no_node should_work/integrator.lus
-../utils/test_lus2lic_no_node should_work/over2.lus
-
-
-* WAITING Ya un probleme avec ce fichier lustre (compilait avant)
-   - State "WAITING"    from "STARTED"    [2013-01-17 Thu 10:48]
-   - State "STARTED"    from "TODO"       [2013-01-17 Thu 10:48]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 17:05
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Pas clair
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: WAITING
-  :END:
-file:test/should_work/call/call04.lus
-
-il semble y avoir une confusion entre parametre et arguments lors
-d'appels de noeuds définis via des itérateurs de tableau
-
-idem pour
-file:test/should_work/fab_test/morel2.lus
-et pleins d'autres. hm, y'aurait pas d'itérateurs dans celui la.
-
--> ok  : c'était à  de l2lAliasType (que  j'ai déranché du  coup) qui
-faisait  que les  types lic  n'étaient plus  uniques et  du coup  les
-substitutions  dans  l'expansion  des  noeuds ne  se  faisaient  plus
-correctement.
-
-je met en attente en attendant de savoir ce qu'on fait de ce module.
-moi j'ai bien envie de virer AbstractType de Lic.type_. En effet, j'avais 
-fait attention à tous les virer pour éviter les soucis, mais le plus 
-propre c'est d'y virer vraiment. 
-
-Pascal lui, s'en  est servi pour faire des types  alias, alors que ca
-n'est pas fait pour. Cela dit, si  on créé des types alias, on risque
-d'avoir le meme genre de soucis. A quoi ca sert d'avoir de tels types
-?  pour moi le role de la compil ca serait plutot de les virer que de
-les rajouter, mais bon. A discuter. cf point d'apres
-
-* TODO Les assertions qui echouent font planter les tests : reflechir a une parade
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-05-31 Fri 17:21
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-car apres tout, c'est voulu dans le prog, et ca n'est donc pas un pb du compilo
-
-   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
- ../utils/test_lus2lic_no_node should_work/assertion.lus
- ../utils/test_lus2lic_no_node should_work/drapfab.lus
- ../utils/test_lus2lic_no_node should_work/s.lus
- ../utils/test_lus2lic_no_node should_work/eq1.lus
- ../utils/test_lus2lic_no_node should_work/lecteur.lus
- ../utils/test_lus2lic_no_node should_work/alarme.lus
-
-* TODO pb gen-autotest
-   - State "TODO"       from ""           [2013-06-03 Mon 09:51]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-06-03 Mon 09:57
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-../utils/test_lus2lic_no_node should_work/plus.lus
- + ./lus2lic _plus_oracle.lus -n plus_oracle -lv4 -eei -en --no-prefix -o lv4_plus_oracle.lus
-
- Error in file "/home/jahier/lus2lic/test/_plus_oracle.lus", line 6, col 28 to 28, token '=':
- tuple size error: 
- the tuple size is
-	4 for the left-hand-side, and 
-	1 for the right-hand-side (in c_bis,d_bis,e_bis,f_bis = a + b)
-
-et aussi :
-../utils/test_lus2lic_no_node should_work/bred.lus
-../utils/test_lus2lic_no_node should_work/alias.lus
-../utils/test_lus2lic_no_node should_work/bred_lv4.lus
-../utils/test_lus2lic_no_node should_work/minus.lus
-
-* TODO il reste des pbs de portée de nom
-   - State "TODO"       from ""           [2013-06-03 Mon 09:56]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-06-03 Mon 10:21
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
- ./lus2lic should_work/myplus.lus -n plus -ec 
-../utils/test_lus2lic_no_node should_work/minus.lus
-
-* TODO Lurette trouve un mismatch sur ce prog au step 0
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-06-04 Tue 10:15
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-../utils/test_lus2lic_no_node should_work/mapiter.lus
-../utils/test_lus2lic_no_node should_work/arrays.lus
-../utils/test_lus2lic_no_node should_work/nested.lus    
-../utils/test_lus2lic_no_node should_work/matrice.lus
-../utils/test_lus2lic_no_node should_work/mapdeRed.lus
-../utils/test_lus2lic_no_node should_work/over2.lus
-../utils/test_lus2lic_no_node should_work/predefOp.lus
-file:test/should_work/predefOp.lus
-
-* TODO Lurette trouve un mismatch sur ce prog au step 2
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2013-06-04 Tue 14:16
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-../utils/test_lus2lic_no_node should_work/cond01.lus
-
-* TODO 
-   - State "TODO"       from ""           [2014-06-16 Mon 08:59]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-06-16 Mon 10:50
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
- lus2lic -exec should_work/map.lus -n pbmap
-ne prend pas en compte la valeur du pre
-
-* TODO Lurette trouve un mismatch sur ce prog au step 7
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-06-16 Mon 11:00
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
- ../utils/test_lus2lic_no_node should_work/call07.lus
-
-file:test/should_work/call07.lus
-
-* TODO pb en utilisant -2c et -esa en meme temps
-   - State "TODO"       from ""           [2014-07-04 Fri 16:16]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-07-10 Thu 10:17
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -2C
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
- lus2lic should_work/modes3x2_v4.lus  -n modes3x2_v4 -esa -o xxx -2c
-
-* TODO Lurette trouve un mismatch sur ce prog au step 1
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-07 Thu 12:27
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-../utils/test_lus2lic_no_node should_work/pipeline.lus
-
-file:test/should_work/pipeline.lus
-
-* TODO Lurette trouve un mismatch sur ce prog au step 6
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-07 Thu 12:27
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-file:test/should_work/deSimone.lus 
-
-../utils/test_lus2lic_no_node should_work/deSimone.lus
-
-* TODO Lurette trouve un mismatch sur ce prog au step 2
-   - State "TODO"       from ""           [2013-05-10 Fri 17:08]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-07 Thu 12:27
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-../utils/test_lus2lic_no_node should_work/test.lus
-
-file:test/should_work/test.lus
-
-* TODO le traitement du condact ne marche plus
-   - State "TODO"       from ""           [2014-06-27 Fri 15:26]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-07 Thu 16:15
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: lus2lic -exec
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-depuis le 2eme commit  du 18-06-2014
-
- lus2lic should_work/test_condact.lus -n test_condact  -exec
-
-
-once the activation condition has been  true, and when it is false it
-returns the default value instead of the previous one.
-* TODO Use severale machine to launch tests in paralell 
-  - State "TODO"       from ""           [2014-08-14 Thu 11:23]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-22 Fri 10:38
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO Traiter TOUS les warnings !!!
-  - State "TODO"       from ""           [2014-08-13 Wed 17:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-08-26 Tue 10:19
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-* TODO lus2lic genere du ec mal typé !!
-   - State "TODO"       from ""           [2013-05-10 Fri 17:24]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:04
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
- ../utils/test_lus2lic_no_node should_work/predef03.lus
-
-* TODO pour ceux la ils suffit d'expanser. Comment eviter que les tests echouent ?
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:04
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Testing process
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-- lus2lic -2c should_work/activation2.lus -n activation2
-- lus2lic -2c should_work/activation1.lus -n activation1
-- lus2lic -2c should_work/asservi.lus -n asservi
-- lus2lic -2c should_work/speedcontrol.lus -n speedcontrol
-* TODO pb d'horloge
-   - State "TODO"       from ""           [2014-08-13 Wed 17:33]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:07
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-#+BEGIN_SRC lustre
-node xxx(x:int;c:bool) returns (res1,res2:int);
-var
-  y:int when c; 
-  k:int when c;
-let
-  y = x when c;
-  k = (0 fby (k+1)) when c ;-- erreur ici, alors que ca semble bon
-  res1 = current(y);
-  res2 = current(k);
-tel
-#+END_SRC
-
-clock error: ' on c on base' is not a sub-clock of ' on base'
-en plus le message est bizzare
-
-D'une maniere generale, les messages d'erreur en cas de pb d'horloge sont vraiment mauvais.
-
--> non, en fait, le when c ne sert a rien piur definir le k.
-* TODO msg d'erreur un peu mauvais sur ce programme
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:11
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-#+begin_src lustre
-node argos_oracle(a:bool;b:bool;s0:bool;s1:bool;s2:bool) returns(ok:bool;s0_bis:bool;s1_bis:bool;s2_bis:bool);
-let
-  (s0_bis,s1_bis,s2_bis) = argos(a,b);
-s0=s0_bis;
-  s1=s1_bis;
-  s2=s2_bis;
-tel;
-#+end_src
-
--> ah bon ? bof.
-
-* TODO ce noeud ne compile pas en mode -ec
-   - State "TODO"       from ""           [2013-04-17 Wed 15:51]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:12
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-#+begin_src lustre
-node trivial3(e: int ^2) returns (x: int ^6);
-var
-  c: int ^6;
-let
-  c = e|e|e;
-  x[0..2] = c[3..5];
-  x[3..5] = c[0..2];
- 
-tel
-#+end_src
-
--> maintenant si
-
-* TODO pb en mode -esa avec les itérateurs
-   - State "TODO"       from ""           [2014-06-05 Thu 10:00]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-03 Wed 11:14
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Divers
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-lus2lic  should_work/minus.lus -n minus  -esa
-lus2lic should_work/normal.lus -n normal -esa
-
--> plus maintenant
-
-* TODO divergence -exec et -2c (1)
-   - State "TODO"       from ""           [2014-07-11 Fri 12:02]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-09-04 Thu 14:42
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: Failures spotted by non reg tests (13)
-  :ARCHIVE_CATEGORY: lv6
-  :ARCHIVE_TODO: TODO
-  :END:
-
-grep "FAIL:" lus2lic*.log | grep "exec" | grep "\-2c" | sed s/'FAIL: Try to compare lus2lic -exec and -2c:'/-/
-
-1) ../utils/compare_exec_and_2c should_work/PCOND.lus 48319 
-  Failure occured in lurette: The oracle first output should be a bool;
-  but ok has type nil
-
-* A option to inline the simple nodes such as AND, OR, NOT etc.
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-10-01 Wed 17:31
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: a classer/Willie's wishes
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-
-* The expansion of nodes with -efn --expand-following-nodes [easy]
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-10-02 Thu 14:54
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: a classer/Willie's wishes
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-
-the current available options are:
-
--en, --expand-nodes
-            Expand the main node (use the first node if no one is
-specified).
--den, --do_not-expand-nodes <string>
-            Do not expand the specified node (meaningful with -en only of
-course).
-
-It might be better if another option such as -efn --expand-following-nodes
-<string>
-The nodes which are not in the string will not be expanded.
-
-* Generate a copy of memcpy and replace the sizeof operator with the actual size of the structure.
-  :PROPERTIES:
-  :ARCHIVE_TIME: 2014-10-02 Thu 17:54
-  :ARCHIVE_FILE: ~/lus2lic/todo.org
-  :ARCHIVE_OLPATH: a classer/Willie's wishes
-  :ARCHIVE_CATEGORY: lv6
-  :END:
-
-  It seems that the "assert" operator will generate "array" structure
-  where the  number of  the element  depending on  the number  of the
-  arguments to  the "assert". The  generated C  code tries to  make a
-  copy    of    this    structure     with    memcpy    and    giving
-  sizeof(the_structure_to_copy) as the argument.
-
-  Since OTAWA does not handle memcpy, could you generate a version of
-  memcpy (contains  a for loop)  for each  memcpy call.  (Or  just to
-  paste the for loop to replace the memcpy call), while the iteration
-  count of the for loop is given (in actual value) so that ORANGE can
-  handle it.....
-
-
-je comprend pas tout, mais ce que je retiens, c'est de remplacer les memcpy
-par des appels a des fonctions (ou des macros) qui par default utiliseraient 
-des memcpy
-
-genre
-  
-   _assign_ip2(ctx.x, ctx.y);
-
-#+BEGIN_SRC C
-#ifndef _assign_ip2 
-#define _assign_ip2(dest, source) memcpy(dest, source, sizeof(dest))
-#endif
-#+END_SRC
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/rundbg b/utils/rundbg
similarity index 100%
rename from rundbg
rename to utils/rundbg