File:  [local] / rpl / LIMITATIONS
Revision 1.11: download - view: text, annotated - select for diffs - revision graph
Tue Mar 9 10:15:27 2010 UTC (14 years, 1 month ago) by bertrand
Branches: MAIN
CVS tags: rpl-4_0_12, HEAD
Commit final pour 4.0.12.

    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.
   16: ROUTINE
   17:   INTERFACE fonction
   18:     ALTERN
   19:         integer
   20:         real matrix
   21:         integer/real/complex vector
   22:         table
   23:         list
   24:     RESULT
   25:         type
   26:     END
   27:   END
   28: REQUIRES
   29: PROVIDES
   30: CONTAINS
   31: <<
   32: >>
   33: 
   34: ROUTINE
   35: <<
   36:     -> I
   37:     <<
   38:     >>
   39: >>
   40: 
   41: Traiter les expressions et les noms dans les fichiers. Rajouter un
   42: type de format pour les binaires non formatés (LOGICAL)
   43: 
   44: IMPORT -> installe à chaud de nouvelles définitions. Écrase les anciennes
   45: si nécessaire.
   46: 
   47: Prévoir un drapeau pour tester les interfaces (34)
   48: -> désarmé : test des interfaces
   49: -> armé : on ne teste rien
   50: 
   51: colorspec pour les couleurs des graphiques de gnuplot
   52: 
   53: TRIGGER attaché à un objet (fonction appelée dès la modification de l'objet)
   54: -> vérification de contrainte...
   55: 
   56: Decomposition de Hessenberg dgehrd, zgehrd; dorghr, zunghr for computing P
   57: dgehd2.f+dgebal.f
   58: 
   59: Pseudo inverse dgelss, zgelss
   60: 
   61: Tables dans interface_tex
   62: 
   63: Fichiers à accès direct -> entretenir une table en mémoire (hsearch())
   64: Les enregistrements sont de la forme :
   65: [Position enregistrement suivant][enregistrement]
   66: ADDNODE
   67: DELNODE
   68: 
   69: { arguments } << programme >> << interruption >> SUBMIT
   70: arg1 ... argn n << programme >> << interruption >> SUBMIT
   71: n BATCH (lance N threads simultanés en boucle) Arrêt lorsque DELNODE est
   72: appelé du noeud maître
   73: 
   74: FOREIGN (pour les variables)
   75: 
   76: ADDNOTE envoie les variables de niveau 0 au noeud client.
   77: SUBMIT envoie l'adresse de création des variables 'foreign' au client
   78: // Maître
   79: << foreign 1 -> X
   80:     <<
   81:         << foreign -> X << 'X' incr >> >> << >> submit
   82:     >>
   83: >>
   84: 
   85: ================================================================================
   86: 
   87: Compilation -> faire un exécutable qui appelle rpl par rpl -S
   88: 
   89: Verification des erreurs mémoire dans le cas d'erreur avant l'appel au
   90: séquenceur dans rpl.c
   91: 
   92: Coller un fichier ~/.rpl qui contient les valeurs par défaut des drapeaux
   93: 
   94: 'a(3)+a(3,4)' ne doit pas provoquer d'erreur si a est du type liste ou table.
   95: Si a est une liste ou une table : une seule dimension possible !
   96: 
   97: [[ 1 2 ]]3 est valide !
   98: 
   99: Evaluation symbolique des fonction ?
  100: 
  101: SQL sur des données binaires
  102: 
  103: La manière standard de faire est d'utiliser des wchar_t pour représenter les
  104: caractères (à distinguer des bytes).
  105: Il y a plein de choses dans la bibliothèque standard :
  106: - mbtowc et compagnie, et aussi mbrtowc et compagnie, une variante
  107: probablement identique dans ton cas
  108: - fgetwc, fputwc, fwprintf etc. pour les entrées-sorties
  109: - wcs*() qui remplace les fonctions en str*()
  110: 
  111: FLOW (utilise en lecture FORMAT)
  112: 
  113: Vérifier la cohérence des arguments de OPEN
  114: 
  115: TO DO
  116:     File support : SEEK, SUPPRESS, REWRITE
  117: 
  118: Mettre des tableaux dans les formats binaires
  119: 
  120: Fichier en accès direct -> 12 {} puis entretenir un fichier d'index.
  121: Fichiers flow
  122: 
  123: SLOPEFIELD
  124: 
  125: Simplification des expressions : convertir la notation polonaise en
  126: arbre.
  127: 
  128: Problème d'indentation de
  129: select
  130:     case then end <- sur la même ligne

CVSweb interface <joel.bertrand@systella.fr>