mardi 23 décembre 2008

Notations...

Il existe différentes façons de présenter les expressions mathématiques, les définitions de fonctions ou encore du code informatique. Juste pour l'exemple, sur l'expression [(5+1)*7 = 42] voici les 3 notations les plus courantes en programmation :



La notation infixée est la plus courante. C'est celle que l'on utilise la plus généralement tant en mathématiques qu'en programmation (j'entends par là, dans la majorité des langages...). Les opérateurs se placent entre les opérandes.

La notation préfixée place l'opérateur avant les opérandes. On la retrouve dans des langages tels que LISP ou Scheme. Même si elle peut paraître assez peu intéressante sur cet exemple, elle présente un grand intérêt : ne pas limiter un opérateur à seulement 2 opérandes. Par exemple [1 + 2 + 3 + 4 = 10] peut s'écrire plus succinctement [(+ 1 2 3 4)].

Enfin, la notation postfixée (ou Polonaise inversée) place elle les opérateurs à la suite des opérandes. Celle-ci est quasi-systématique dans les langages concaténatifs tels que Forth, Factor, Joy ou Cat (dont on devrait reparler ici très prochainement...). Vous remarquerez son absence de parenthèse : c'est son idée de base.

3 commentaires:

Lefty a dit…

je faisais assez bien la polonaise inversée quand j'étais souple.
par contre,je ne connais aucune des demoiselles dont tu parles ensuite (Joy, ça me dit quelque chose, mais je suis pas sûr).
:-)

Anonyme a dit…

Un p'tit bonus avec http://fr.wikipedia.org/wiki/Arbre_binaire#Parcours_pr.C3.A9fixe.2C_infixe_et_postfixe : on peut passer de l'une à l'autre avec juste un arbre en intermédiaire !

Sobe a dit…

Hey, merci pour la référence : j'aurais pas imaginé que c'était aussi "simple" pour faire la conversion.