Annotation of rpl/LIMITATIONS, revision 1.15
1.1 bertrand 1: RESTRICTIONS
2: Only sequential formatted files are supported.
3:
4: Économisons notre mépris eut égard au nombre de nécessiteux.
5: Chateaubriand.
6:
7: Mettre les variables dans un arbre avec une liste chaîne des niveaux dans
8: chaque maillon de la pile système. -> version 4.1
9:
10: Dessiner les niveaux sur les graphes
11: { "main" { "default" } { "automatic" 10 } } axes redraw
12: Ne fonctionne pas...
13:
14: // Teste les interfaces d'entrée et de sortie d'une fonction. Une fonction
15: // peut avoir plusieurs interfaces.
1.15 ! bertrand 16: FONCTION
! 17: <<
! 18: INTERFACE
! 19: ALTERN
! 20: RESULT
! 21: REQUIRES
! 22: END
! 23: END
! 24: >>
! 25:
1.13 bertrand 26: fonction
27: INTERFACE
1.15 ! bertrand 28: integer scalar
1.13 bertrand 29: real matrix
1.15 ! bertrand 30: complex vector
1.13 bertrand 31: table
32: list
1.15 ! bertrand 33: binary
! 34: name
! 35: string
! 36: algebraic
! 37: expression
! 38: file
! 39: socket
! 40: library
! 41: process
! 42: sql
! 43: mutex
! 44: semaphore
! 45: CONSTRAINED
! 46: 4 pick size 6 pick size same
1.13 bertrand 47: RESULT
48: type
49: END
50:
51: INTERFACE
52: integer
53: real matrix
54: integer/real/complex vector
55: table
56: list
57: RESULT
58: type
1.1 bertrand 59: END
60: REQUIRES
1.15 ! bertrand 61: variables globales ou définitions
1.1 bertrand 62: PROVIDES
63: <<
64: >>
65:
66: Traiter les expressions et les noms dans les fichiers. Rajouter un
67: type de format pour les binaires non formatés (LOGICAL)
68:
69: IMPORT -> installe à chaud de nouvelles définitions. Écrase les anciennes
70: si nécessaire.
71:
72: Prévoir un drapeau pour tester les interfaces (34)
73: -> désarmé : test des interfaces
74: -> armé : on ne teste rien
75:
76: colorspec pour les couleurs des graphiques de gnuplot
77:
78: TRIGGER attaché à un objet (fonction appelée dès la modification de l'objet)
79: -> vérification de contrainte...
80:
81: Decomposition de Hessenberg dgehrd, zgehrd; dorghr, zunghr for computing P
82: dgehd2.f+dgebal.f
83:
84: Pseudo inverse dgelss, zgelss
85:
86: Tables dans interface_tex
87:
1.8 bertrand 88: Fichiers à accès direct -> entretenir une table en mémoire (hsearch())
1.1 bertrand 89: Les enregistrements sont de la forme :
90: [Position enregistrement suivant][enregistrement]
91: ADDNODE
92: DELNODE
93:
94: { arguments } << programme >> << interruption >> SUBMIT
95: arg1 ... argn n << programme >> << interruption >> SUBMIT
96: n BATCH (lance N threads simultanés en boucle) Arrêt lorsque DELNODE est
97: appelé du noeud maître
98:
99: FOREIGN (pour les variables)
100:
101: ADDNOTE envoie les variables de niveau 0 au noeud client.
102: SUBMIT envoie l'adresse de création des variables 'foreign' au client
103: // Maître
104: << foreign 1 -> X
105: <<
106: << foreign -> X << 'X' incr >> >> << >> submit
107: >>
108: >>
109:
110: ================================================================================
111:
112: Compilation -> faire un exécutable qui appelle rpl par rpl -S
113:
114: Verification des erreurs mémoire dans le cas d'erreur avant l'appel au
115: séquenceur dans rpl.c
116:
117: Coller un fichier ~/.rpl qui contient les valeurs par défaut des drapeaux
118:
119: 'a(3)+a(3,4)' ne doit pas provoquer d'erreur si a est du type liste ou table.
120: Si a est une liste ou une table : une seule dimension possible !
121:
122: [[ 1 2 ]]3 est valide !
123:
124: Evaluation symbolique des fonction ?
125:
126: SQL sur des données binaires
127:
128: La manière standard de faire est d'utiliser des wchar_t pour représenter les
129: caractères (à distinguer des bytes).
130: Il y a plein de choses dans la bibliothèque standard :
131: - mbtowc et compagnie, et aussi mbrtowc et compagnie, une variante
132: probablement identique dans ton cas
133: - fgetwc, fputwc, fwprintf etc. pour les entrées-sorties
134: - wcs*() qui remplace les fonctions en str*()
135:
136: FLOW (utilise en lecture FORMAT)
137:
138: Vérifier la cohérence des arguments de OPEN
139:
140: TO DO
141: File support : SEEK, SUPPRESS, REWRITE
142:
143: Mettre des tableaux dans les formats binaires
144:
145: Fichier en accès direct -> 12 {} puis entretenir un fichier d'index.
146: Fichiers flow
147:
148: SLOPEFIELD
149:
150: Simplification des expressions : convertir la notation polonaise en
151: arbre.
152:
153: Problème d'indentation de
154: select
155: case then end <- sur la même ligne
CVSweb interface <joel.bertrand@systella.fr>