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: Mettre les variables dans un arbre mis à plat :
11: [ niveau 1 ][ niveau 2,1 ][ niveau 2,5 ][ niveau 3,1 ]...
12: avec des pointeur relatifs pour pouvoir copier rapidement par un
13: memcpy() l'ensemble de la structure de description des variables lors
14: d'un spawn.
15:
16: ATEXIT casse SIGFSTOP lors d'un arrêt par abort !
17:
18: Empêcher les interruptions ctrlC dans les appels récursifs (evaluation et
19: sequenceur)
20: Connexion au terminal de contrôle perdue !
21:
22: Routing library unloaded.
23:
24: +++Erreur : Type d'argument invalide pour la commande SWAP [27630]
25:
26: +++Information : Génération du fichier rpl-core [27630]
27: +++Erreur : Type d'argument invalide pour la commande GET [27630]
28:
29: +++Erreur : Type d'argument invalide pour la commande >> [27630]
30: +++Information : Génération du fichier rpl-core [27630]
31:
32: +++Erreur : Type d'argument invalide pour la commande > [27630]
33: +++Information : Génération du fichier rpl-core [27630]
34:
35: +++Information : Génération du fichier rpl-core [27630]
36: tchaikovski:[~/rpl/cvs/optimisation] > ./serveur.rpl
37:
38: -> toujours une erreur de type _type d'argument invalide_ !
39:
40: Dessiner les niveaux sur les graphes
41: { "main" { "default" } { "automatic" 10 } } axes redraw
42: Ne fonctionne pas...
43:
44: // Teste les interfaces d'entrée et de sortie d'une fonction. Une fonction
45: // peut avoir plusieurs interfaces.
46: FONCTION
47: <<
48: INTERFACE
49: ALTERN
50: RESULT
51: REQUIRES
52: END
53: END
54: >>
55:
56: fonction
57: INTERFACE
58: generic
59: integer scalar
60: real matrix
61: complex vector
62: table
63: list
64: binary
65: name
66: string
67: algebraic
68: expression
69: file
70: socket
71: library
72: process
73: sql
74: mutex
75: semaphore
76: CONSTRAINED
77: 4 pick size 6 pick size same
78: RESULT
79: type
80: END
81:
82: INTERFACE
83: integer
84: real matrix
85: integer/real/complex vector
86: table
87: list
88: RESULT
89: type
90: END
91: REQUIRES
92: variables globales ou définitions
93: PROVIDES
94: <<
95: >>
96:
97: Traiter les expressions et les noms dans les fichiers. Rajouter un
98: type de format pour les binaires non formatés (LOGICAL)
99:
100: IMPORT -> installe à chaud de nouvelles définitions. Écrase les anciennes
101: si nécessaire.
102:
103: Prévoir un drapeau pour tester les interfaces (34)
104: -> désarmé : test des interfaces
105: -> armé : on ne teste rien
106:
107: colorspec pour les couleurs des graphiques de gnuplot
108:
109: TRIGGER attaché à un objet (fonction appelée dès la modification de l'objet)
110: -> vérification de contrainte...
111:
112: Decomposition de Hessenberg dgehrd, zgehrd; dorghr, zunghr for computing P
113: dgehd2.f+dgebal.f
114:
115: Pseudo inverse dgelss, zgelss
116:
117: Tables dans interface_tex
118:
119: Fichiers à accès direct -> entretenir une table en mémoire (hsearch())
120: Les enregistrements sont de la forme :
121: [Position enregistrement suivant][enregistrement]
122: ADDNODE
123: DELNODE
124:
125: { arguments } << programme >> << interruption >> SUBMIT
126: arg1 ... argn n << programme >> << interruption >> SUBMIT
127: n BATCH (lance N threads simultanés en boucle) Arrêt lorsque DELNODE est
128: appelé du noeud maître
129:
130: FOREIGN (pour les variables)
131:
132: FOREIGN permet à un esclave d'accéder à une variable partagée
133: du maître.
134:
135: ADDNOTE envoie les variables de niveau 0 au noeud client.
136: SUBMIT envoie l'adresse de création des variables 'foreign' au client
137: // Maître
138: << foreign 1 -> X
139: <<
140: << foreign -> X << 'X' incr >> >> << >> submit
141: >>
142: >>
143:
144: ================================================================================
145:
146: Compilation -> faire un exécutable qui appelle rpl par rpl -S
147:
148: Verification des erreurs mémoire dans le cas d'erreur avant l'appel au
149: séquenceur dans rpl.c
150:
151: Coller un fichier ~/.rpl qui contient les valeurs par défaut des drapeaux
152:
153: 'a(3)+a(3,4)' ne doit pas provoquer d'erreur si a est du type liste ou table.
154: Si a est une liste ou une table : une seule dimension possible !
155:
156: [[ 1 2 ]]3 est valide !
157:
158: Evaluation symbolique des fonction ?
159:
160: SQL sur des données binaires
161:
162: La manière standard de faire est d'utiliser des wchar_t pour représenter les
163: caractères (à distinguer des bytes).
164: Il y a plein de choses dans la bibliothèque standard :
165: - mbtowc et compagnie, et aussi mbrtowc et compagnie, une variante
166: probablement identique dans ton cas
167: - fgetwc, fputwc, fwprintf etc. pour les entrées-sorties
168: - wcs*() qui remplace les fonctions en str*()
169:
170: FLOW (utilise en lecture FORMAT)
171:
172: Vérifier la cohérence des arguments de OPEN
173:
174: TO DO
175: File support : SEEK, SUPPRESS, REWRITE
176:
177: Mettre des tableaux dans les formats binaires
178:
179: Fichier en accès direct -> 12 {} puis entretenir un fichier d'index.
180: Fichiers flow
181:
182: SLOPEFIELD
183:
184: Simplification des expressions : convertir la notation polonaise en
185: arbre.
186:
187: Problème d'indentation de
188: select
189: case then end <- sur la même ligne
CVSweb interface <joel.bertrand@systella.fr>