Hello,
J'avance tout doucement dans mes transcodages en fonction de mes moments libres.
C'est instructif et plus difficile que prévu.
Je me rend compte que j'ai des codes sources de différents BASIC.
Il y a du QBASIC, mais d'autres BASIC. J'ai oublié d'où cela provient.
J'ai eu des surprises avec des ASN et ACS ( -> arc sin et arc cos ) inconnus de QB, mais un équivalent en QB64PE avec _ASIN et _ACOS.
ASN (x) ne renvoie pas un code d'erreur, mais 0.
De même les fonctions inconnues de QB.
Il a fallu adapter des INT x en INT (x), QB ne digérant pas l'absence des (), de même toutes les fonctions, alors que le BASIC d'origine semble les avoir acceptées.
L'absence de message d'erreur m'a parfois donné quelques soucis alors que je ne l'avais pas repéré.
Je commence par tester le code avec QB64PE. Ensuite j'envisage le transcodage.
Beaucoup de ce sources sont du spaghetti bidouillé. Parfois des pseudo SUB adressés par le numéro de ligne avec un retour par aiguillage en fonction d'un marqueur au moment de l'appel.
C'est beaucoup du labyrinthe finalement, pire que spaghetti.
Très souvent que des variables globales sans spécification, donc double par défaut et sans déclaration du tout.
Parfois un DefDble A,Z.
Je reconnais facilement "mes" codes sources bien mieux structurés, quoique à mes débuts...
J'ai souvent réservé les variables commençant par I à N pour les entiers ( rappel de "INT" ). Une habitude venue du FORTRAN.
Je constate souvent des cheminement de codes peu performants, voire défectueux. Le niveau en maths des concepteurs ne brillait pas. D'où des codes sources médiocres, voire défectueux. Des modes de résolution de systèmes d'équations sommaires par ex.
Parfois, je n'ai pu comprendre le but du code... J'ai abandonné dans nombre de cas.
Je me rend compte de la pathologie des codes mal écrits et mal conçus. La quasi absence de commentaire souvent.
Je n'ai pas à rougir des mes anciens codes... enfin pas trop.
C'est très instructif et très pédagogique finalement.
Je pense à quelques codes pour diverses fonctionnalités qui, améliorés, pourront prendre place dans les exemples du forum.
Merci à toutes/tous pour vos commentaires.





Répondre avec citation
Partager