Annotation of rpl/LIMITATIONS, revision 1.3
1.1 bertrand 1: RESTRICTIONS
2: Only sequential formatted files are supported.
3:
4: Rajouter les options de compilation dans mkrplso et les versions et dates dans
5: les pages de manuel.
6:
7: Économisons notre mépris eut égard au nombre de nécessiteux.
8: Chateaubriand.
9:
10: Mettre les variables dans un arbre avec une liste chaîne des niveaux dans
11: chaque maillon de la pile système. -> version 4.1
12:
1.3 ! bertrand 13: Ajouter un support sqlite.
! 14:
! 15: L'assembleur VAX peut lire des listes chaînées
! 16:
1.1 bertrand 17: Assembleur sparc
18:
19: SPARC:ROUTINE
20: <<
1.2 bertrand 21: .level v8
22:
1.1 bertrand 23: // Arguments d'entrée :
24: -> fonctionne pour INT, REL, CPL, CHN
25: label1: sethi $g1,$hi(12524)
26:
27: call next // fournit le prochain élément de la liste
28:
29: $g1 contient la base de la pile
30: La question est : comment charger des objets ?
31:
32: .pull $l0
33: >>
34:
35: Dessiner les niveaux sur les graphes
36: { "main" { "default" } { "automatic" 10 } } axes redraw
37: Ne fonctionne pas...
38:
39: // Teste les interfaces d'entrée et de sortie d'une fonction. Une fonction
40: // peut avoir plusieurs interfaces.
41: ROUTINE
42: INTERFACE fonction
43: ALTERN
44: integer
45: real matrix
46: integer/real/complex vector
47: table
48: list
49: RESULT
50: type
51: END
52: END
53: REQUIRES
54: PROVIDES
55: CONTAINS
56: <<
57: >>
58:
59: ROUTINE
60: <<
61: -> I
62: <<
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:
88: Fichiers à accès direct -> entretenir une table en mémoire
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>