--- rpl/LIMITATIONS 2015/03/25 14:45:07 1.168 +++ rpl/LIMITATIONS 2016/12/01 12:06:56 1.183 @@ -1,7 +1,15 @@ RESTRICTIONS +TOKENIZE ne fonctionne pas avec des chaînes qui comportent un \t. +Idem pour des arguments contenant des parenthèses. + +rpl_arguments rend rplexternals.h non réentrant. + Rajouter un type pour les entier, réels et complexes longs 123~ -> entier long INL +123_ +123.34E2_53 + 123.34E2~53 -> flottant long (avec sa précision) RLL (123.42E~253, 14~) -> complexe long CXL @@ -16,6 +24,20 @@ Ne passe pas sur une socket. } { 3 50 } { 3 50 } } # 257B521B6513F2h } Idem avec une table. + +{ 'source' 'deplacement' 'origine' } record +-> création d'un type 'record' +Record { 'source' 'deplacement' 'origine' } + +{ 'nom' } record 'structure' sto +L'évaluation de structure crée une nouvelle structure <[]> contenant un pointeur +vers le type 'record' (arbre). + +Accès : structure 'nom' get + +Mettre l'indicateur de debug dans une pile pour ne pas debugguer les fonctions +appelées. + Réduire le nombre de pipes entre deux processus. Remonter une erreur de format en cas de lecture sur un fichier ou une socket formatée ou non formatée. @@ -55,39 +77,40 @@ Chateaubriand. Translitération des fichiers (avec un pointeur sur la localisation du fichier dans la structure du fichier). +Traiter BACKSPACE pour les fichiers non formatés. Fichiers non formatés : restent à coder pour les écritures : - * 0010 00 00 vecteur integer*1 (dimensions integer*1) - * 0010 01 00 vecteur integer*1 (dimensions integer*2) - * 0010 10 00 vecteur integer*1 (dimensions integer*4) - * 0010 11 00 vecteur integer*1 (dimensions integer*8) - * 0010 00 01 vecteur integer*2 (dimensions integer*1) - * 0010 01 01 vecteur integer*2 (dimensions integer*2) - * 0010 10 01 vecteur integer*2 (dimensions integer*4) - * 0010 11 01 vecteur integer*2 (dimensions integer*8) - * 0010 00 10 vecteur integer*4 (dimensions integer*1) - * 0010 01 10 vecteur integer*4 (dimensions integer*2) - * 0010 10 10 vecteur integer*4 (dimensions integer*4) - * 0010 11 10 vecteur integer*4 (dimensions integer*8) - * 0010 00 11 vecteur integer*8 (dimensions integer*1) - * 0010 01 11 vecteur integer*8 (dimensions integer*2) - * 0010 10 11 vecteur integer*8 (dimensions integer*4) - * 0010 11 11 vecteur integer*8 (dimensions integer*8) - * 0011 00 00 matrice integer*1 (dimensions integer*1) - * 0011 01 00 matrice integer*1 (dimensions integer*2) - * 0011 10 00 matrice integer*1 (dimensions integer*4) - * 0011 11 00 matrice integer*1 (dimensions integer*8) - * 0011 00 01 matrice integer*2 (dimensions integer*1) - * 0011 01 01 matrice integer*2 (dimensions integer*2) - * 0011 10 01 matrice integer*2 (dimensions integer*4) - * 0011 11 01 matrice integer*2 (dimensions integer*8) - * 0011 00 10 matrice integer*4 (dimensions integer*1) - * 0011 01 10 matrice integer*4 (dimensions integer*2) - * 0011 10 10 matrice integer*4 (dimensions integer*4) - * 0011 11 10 matrice integer*4 (dimensions integer*8) - * 0011 00 11 matrice integer*8 (dimensions integer*1) - * 0011 01 11 matrice integer*8 (dimensions integer*2) - * 0011 10 11 matrice integer*8 (dimensions integer*4) - * 0011 11 11 matrice integer*8 (dimensions integer*8) +/ * 0010 00 00 vecteur integer*1 (dimensions integer*1) +/ * 0010 01 00 vecteur integer*1 (dimensions integer*2) +/ * 0010 10 00 vecteur integer*1 (dimensions integer*4) +/ * 0010 11 00 vecteur integer*1 (dimensions integer*8) +/ * 0010 00 01 vecteur integer*2 (dimensions integer*1) +/ * 0010 01 01 vecteur integer*2 (dimensions integer*2) +/ * 0010 10 01 vecteur integer*2 (dimensions integer*4) +/ * 0010 11 01 vecteur integer*2 (dimensions integer*8) +/ * 0010 00 10 vecteur integer*4 (dimensions integer*1) +/ * 0010 01 10 vecteur integer*4 (dimensions integer*2) +/ * 0010 10 10 vecteur integer*4 (dimensions integer*4) +/ * 0010 11 10 vecteur integer*4 (dimensions integer*8) +/ * 0010 00 11 vecteur integer*8 (dimensions integer*1) +/ * 0010 01 11 vecteur integer*8 (dimensions integer*2) +/ * 0010 10 11 vecteur integer*8 (dimensions integer*4) +/ * 0010 11 11 vecteur integer*8 (dimensions integer*8) +/ * 0011 00 00 matrice integer*1 (dimensions integer*1) +/ * 0011 01 00 matrice integer*1 (dimensions integer*2) +/ * 0011 10 00 matrice integer*1 (dimensions integer*4) +/ * 0011 11 00 matrice integer*1 (dimensions integer*8) +/ * 0011 00 01 matrice integer*2 (dimensions integer*1) +/ * 0011 01 01 matrice integer*2 (dimensions integer*2) +/ * 0011 10 01 matrice integer*2 (dimensions integer*4) +/ * 0011 11 01 matrice integer*2 (dimensions integer*8) +/ * 0011 00 10 matrice integer*4 (dimensions integer*1) +/ * 0011 01 10 matrice integer*4 (dimensions integer*2) +/ * 0011 10 10 matrice integer*4 (dimensions integer*4) +/ * 0011 11 10 matrice integer*4 (dimensions integer*8) +/ * 0011 00 11 matrice integer*8 (dimensions integer*1) +/ * 0011 01 11 matrice integer*8 (dimensions integer*2) +/ * 0011 10 11 matrice integer*8 (dimensions integer*4) +/ * 0011 11 11 matrice integer*8 (dimensions integer*8) * 1001 0 XXX table de longueur XXX * 1001 10 00 table de longueur integer*1 @@ -95,38 +118,38 @@ Fichiers non formatés : restent à code * 1001 10 10 table de longueur integer*4 * 1001 10 11 table de longueur integer*8 * - * 1010 00 10 vecteur real*4 (dimensions integer*1) - * 1010 01 10 vecteur real*4 (dimensions integer*2) - * 1010 10 10 vecteur real*4 (dimensions integer*4) - * 1010 11 10 vecteur real*4 (dimensions integer*8) - * 1010 00 11 vecteur real*8 (dimensions integer*1) - * 1010 01 11 vecteur real*8 (dimensions integer*2) - * 1010 10 11 vecteur real*8 (dimensions integer*4) - * 1010 11 11 vecteur real*8 (dimensions integer*8) - * 1011 00 10 vecteur complex*8 (dimensions integer*1) - * 1011 01 10 vecteur complex*8 (dimensions integer*2) - * 1011 10 10 vecteur complex*8 (dimensions integer*4) - * 1011 11 10 vecteur complex*8 (dimensions integer*8) - * 1011 00 11 vecteur complex*16 (dimensions integer*1) - * 1011 01 11 vecteur complex*16 (dimensions integer*2) - * 1011 10 11 vecteur complex*16 (dimensions integer*4) - * 1011 11 11 vecteur complex*16 (dimensions integer*8) - * 1100 00 10 matrice real*4 (dimensions integer*1) - * 1100 01 10 matrice real*4 (dimensions integer*2) - * 1100 10 10 matrice real*4 (dimensions integer*4) - * 1100 11 10 matrice real*4 (dimensions integer*8) - * 1100 00 11 matrice real*8 (dimensions integer*1) - * 1100 01 11 matrice real*8 (dimensions integer*2) - * 1100 10 11 matrice real*8 (dimensions integer*4) - * 1100 11 11 matrice real*8 (dimensions integer*8) - * 1101 00 10 matrice complex*8 (dimensions integer*1) - * 1101 01 10 matrice complex*8 (dimensions integer*2) - * 1101 10 10 matrice complex*8 (dimensions integer*4) - * 1101 11 10 matrice complex*8 (dimensions integer*8) - * 1101 00 11 matrice complex*16 (dimensions integer*1) - * 1101 01 11 matrice complex*16 (dimensions integer*2) - * 1101 10 11 matrice complex*16 (dimensions integer*4) - * 1101 11 11 matrice complex*16 (dimensions integer*8) +/ * 1010 00 10 vecteur real*4 (dimensions integer*1) +/ * 1010 01 10 vecteur real*4 (dimensions integer*2) +/ * 1010 10 10 vecteur real*4 (dimensions integer*4) +/ * 1010 11 10 vecteur real*4 (dimensions integer*8) +/ * 1010 00 11 vecteur real*8 (dimensions integer*1) +/ * 1010 01 11 vecteur real*8 (dimensions integer*2) +/ * 1010 10 11 vecteur real*8 (dimensions integer*4) +/ * 1010 11 11 vecteur real*8 (dimensions integer*8) +/ * 1011 00 10 vecteur complex*8 (dimensions integer*1) +/ * 1011 01 10 vecteur complex*8 (dimensions integer*2) +/ * 1011 10 10 vecteur complex*8 (dimensions integer*4) +/ * 1011 11 10 vecteur complex*8 (dimensions integer*8) +/ * 1011 00 11 vecteur complex*16 (dimensions integer*1) +/ * 1011 01 11 vecteur complex*16 (dimensions integer*2) +/ * 1011 10 11 vecteur complex*16 (dimensions integer*4) +/ * 1011 11 11 vecteur complex*16 (dimensions integer*8) +/ * 1100 00 10 matrice real*4 (dimensions integer*1) +/ * 1100 01 10 matrice real*4 (dimensions integer*2) +/ * 1100 10 10 matrice real*4 (dimensions integer*4) +/ * 1100 11 10 matrice real*4 (dimensions integer*8) +/ * 1100 00 11 matrice real*8 (dimensions integer*1) +/ * 1100 01 11 matrice real*8 (dimensions integer*2) +/ * 1100 10 11 matrice real*8 (dimensions integer*4) +/ * 1100 11 11 matrice real*8 (dimensions integer*8) +/ * 1101 00 10 matrice complex*8 (dimensions integer*1) +/ * 1101 01 10 matrice complex*8 (dimensions integer*2) +/ * 1101 10 10 matrice complex*8 (dimensions integer*4) +/ * 1101 11 10 matrice complex*8 (dimensions integer*8) +/ * 1101 00 11 matrice complex*16 (dimensions integer*1) +/ * 1101 01 11 matrice complex*16 (dimensions integer*2) +/ * 1101 10 11 matrice complex*16 (dimensions integer*4) +/ * 1101 11 11 matrice complex*16 (dimensions integer*8) Utiliser clock() et clock_t pour émuler getrusage sous OS/2