1

Elle est sûrement un peu con, mais j'aimerais savoir ce que signifie "parser" (g bien une tite ID, mais chui pas sûr), en parlant d'une équation, de balises...


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

2

bah parser signifie que tu interprete ce que tu as.

3

Quand tu lis (2+3)*5 et tu te dis que c'est "le produit de la somme de 2 et de 3 avec 5", tu parses l'expression. Par exemple, le tokéniseur de AMS est un parseur: il lit (2+3)*5, et il se dit que c'est "02 01 POSINT_TAG 03 01 POSINT_TAG ADD_TAG 05 01 POSINT_TAG MUL_TAG", donc bien "le produit de la somme de 2 et de 3 avec 5".
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4

et c koi les "01" qui trainent apres les chiffres ?
warau kado niha fuku kitaru.

#trifouet#!!!

5

Nombre d'octets nécessaires pour représenter le nombre.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

Ça ressemble à du RPN je trouve, non ?

7

ba le mieux pour une evaluation d'expression c de la convertir en rpn je crois
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

8

jackiechan
a écrit : Ça ressemble à du RPN je trouve, non ?

Oui, TI va même jusqu'à l'appeler "RPN" à plusieurs endroits.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

9

Finalement le RPN c'est un peu comme un arbre en fait, c'est pour ça que c'est pratique!
Cours et tutos Asm: http://membres.lycos.fr/sirryl

10

Bien sûr. c'est la notation de calcul la plus naturelle, et c'est pour ça que ça doit être le langage de base d'une calculatrice!
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou

11

Ce sera celle de PedroM love je parie que kevin va réagir

12

j'ai vu. enfin un vrai progrès!
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou

13

PaXaL
a écrit : Finalement le RPN c'est un peu comme un arbre en fait, c'est pour ça que c'est pratique!

C'est un arbre traversé en post-order. La notation algébrique, elle, est le même arbre, mais traversé en in-order, ce qui est beaucoup plus naturel pour un être humain.
HIPPOPOTAME
a écrit : Bien sûr. c'est la notation de calcul la plus naturelle, et c'est pour ça que ça doit être le langage de base d'une calculatrice!

C'est la notation la plus naturelle pour une machine, pas pour une personne.
jackiechan a écrit :
Ce sera celle de PedroM love

Je te signale que Pedrom (du moins la version que j'ai) travaille avec une réimplémentation (partielle) de push_parse_text, donc en algébrique pour l'utilisateur (et en RPN en interne comme AMS). PpHd n'est pas si paresseux que ça.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

14

koi ? tu as une version ??? cry
warau kado niha fuku kitaru.

#trifouet#!!!

15

Kevin Kofler a écrit :
Je te signale que Pedrom (du moins la version que j'ai) travaille avec une réimplémentation (partielle) de push_parse_text, donc en algébrique pour l'utilisateur (et en RPN en interne comme AMS). PpHd n'est pas si paresseux que ça.

Mais il me semble que PpHd avait prévu d'intégrer un interpréteur FORTH.

16

Oui, mais séparé de la ligne d'entrée.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

17

question conne mais c'est chaud non de parser une expression algebrique en notion polonaise non?
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

18

non, pas tellement...
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou

19

En fait c'est un peu ce que fait ton cerveau... tu regarde d'abord les deux nombre et après tu te dis que tu dois faire la somme...
Cours et tutos Asm: http://membres.lycos.fr/sirryl

20

prend cet exemple :
(a+b+e+f)*(r+t+y-z/(c+d)^2)

et ça

a b + e + f + r t + y + z c d + 2 ^ / - *

y'a pas photo, c'est la 1ère expression qui est plus naturelle pour nous. wink

#16 > ça m'a l'air vraiment tout con à faire !!!
si c'est une variable, on l'empile
si c'est un opérateur binaire, on dépile 2 élts et on applique l'opérateur dessus.
si c'est un opérateur unaire, on dépile 1 élt et on applique l'opérateur dessus.

par contre en notation comme dans les bouquins (ou comme dans la ti) c'est nettement plus complexe !!!!!

21

Pour l'écriture oui, mais pour le calcul? tu fais comment?
bah comme tu l'as écrit, à part peut-etre en changeant l'ordre des "groupes" à calculer...
Cours et tutos Asm: http://membres.lycos.fr/sirryl

22

Le plus grand problème de lisibilité de la notation RPN est l'omission des parenthèses. Oui, ces parenthèses sont redondantes, mais on comprend quand-même mieux comme ça:
(a b + e + f +) ((r t + y +) (z ((c d +) 2 ^) /) -) *
(Je n'ai pas mis les parenthèses entre les opérateurs associatifs de même type, exactement comme en algébrique, pour ne pas alourdir trop l'expression de parenthèses.)

Mais même par rapport à ça, personnellement, je préfère l'algébrique.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

23

y'a pas photo, c'est la 1ère expression qui est plus naturelle pour nous.

non...smile
Pour moi, le plus naturel à lire, c'est l'algébrique, mais le plus naturel à écrire, c'est bel et bien le RPN...
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou

24

TiMad
a écrit : question conne mais c'est chaud non de parser une expression algebrique en notion polonaise non?


non, c'est hyper simple, c'est ce qu'on a fait pour notre bistro...
pour l'implementer, il te faut une pile d'operateurs, et la chaine finale de ton expression.

tous les nombres que tu rencontres tu les baances les uns a la suite des autres dans la chaine finale. des que tu trouves un operateur tu te prepare a le mettre dans la pile. si le dernier operateur de la pile a une priorite plus haute que celui que tu veux mettre dedans, tu depile tous les operateurs et tu les balance dans la chaine finale jusqu'a ce que tu tombes sur un operateur de priorite <= a celui que tu veux mettre... quand tu as une parenthese ouvrante, elle "masque" tous les operateurs en dessous d'elle, c'est comme si tu recommencais avec une pile d'operateurs vide. en gros elle a une priorite 0, et aucun test n'est fait quand tu l'empile. quand tu tombe sur une parenthese fermante, tu desempile tout jusqu'a ce que tu tombes sur une parenthese ouvrante (ou le debut de la pile, dans ce cas y a un msg d'erreur style "parse error: missing '(' "). quand t'arrives a la fin de la chaine de depart, tu desempiles tous les operateurs restants (et si tu tombes sur une parenthese ouvrante, tu marque: "parse error: missing ')' ")

bon ca a peut etre pas l'air super simple comme ca mais:

exemple:


(a+b+e+f)*(r+t+y-z/(c+d)^2)


                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          '-'


[4]([/4]a+b+e+f)*(r+t+y-z/(c+d)^2)
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |(|
                          '-'

([4]a[/4]+b+e+f)*(r+t+y-z/(c+d)^2) ------> a



                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |(|
                          '-'

(a[4]+[/4]b+e+f)*(r+t+y-z/(c+d)^2)         a
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          '-'

(a+[4]b[/4]+e+f)*(r+t+y-z/(c+d)^2) ------> a b
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          '-'

(a+b[4]+[/4]e+f)*(r+t+y-z/(c+d)^2)         a b
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          '-'

(a+b+[4]e[/4]+f)*(r+t+y-z/(c+d)^2) ------> a b e
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          '-'

(a+b+e[4]+[/4]f)*(r+t+y-z/(c+d)^2)         a b e
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |+|
                          |(|
                          '-'

(a+b+e+[4]f[/4])*(r+t+y-z/(c+d)^2) -------> a b e f
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |+|
                          |(|
                          '-'

(a+b+e+f[4])[/4]*(r+t+y-z/(c+d)^2)         a b e f +
                             .----->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          '-'

(a+b+e+f[4])[/4]*(r+t+y-z/(c+d)^2)         a b e f + +
                             .----->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          '-'

(a+b+e+f[4])[/4]*(r+t+y-z/(c+d)^2)         a b e f + + +
                             .----->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          '-'

(a+b+e+f)[4]*[/4](r+t+y-z/(c+d)^2)         a b e f + + +
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |*|
                          '-'

(a+b+e+f)*[4]([/4]r+t+y-z/(c+d)^2)         a b e f + + +
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |(|
                          |*|
                          '-'

(a+b+e+f)*([4]r[/4]+t+y-z/(c+d)^2) ------> a b e f + + + r
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r[4]+[/4]t+y-z/(c+d)^2)         a b e f + + + r
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+[4]t[/4]+y-z/(c+d)^2) ------> a b e f + + + r t
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          |*|
                          '-'

In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

25

(a+b+e+f)*(r+t[4]+[/4]y-z/(c+d)^2)         a b e f + + + r t
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+[4]y[/4]-z/(c+d)^2) -------> a b e f + + + r t y
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y[4]-[/4]z/(c+d)^2)         a b e f + + + r t y
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          | |
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-[4]z[/4]/(c+d)^2) ------> a b e f + + + r t y z
                           
                           
                           
                    pile  | |
                          | |
                          | |
                          | |
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z[4]/[/4](c+d)^2)         a b e f + + + r t y z
                           \
                           |
                           V
                    pile  | |
                          | |
                          | |
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/[4]([/4]c+d)^2)         a b e f + + + r t y z
                           \
                           |
                           V
                    pile  | |
                          | |
                          |(|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/([4]c[/4]+d)^2) ------> a b e f + + + r t y z c
                           
                           
                           
                    pile  | |
                          | |
                          |(|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c[4]+[/4]d)^2)         a b e f + + + r t y z c
                           \
                           |
                           V
                    pile  | |
                          |+|
                          |(|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+[4]d[/4])^2) ------> a b e f + + + r t y z c d
                           
                           
                           
                    pile  | |
                          |+|
                          |(|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d[4])[/4]^2)         a b e f + + + r t y z c d +
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)[4]^[/4]2)         a b e f + + + r t y z c d +
                           \
                           |
                           V
                    pile  | |
                          | |
                          |^|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^[4]2[/4]) ------> a b e f + + + r t y z c d + 2
                           
                           
                           
                    pile  | |
                          | |
                          |^|
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2[4])[/4]         a b e f + + + r t y z c d + 2 ^
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          |/|
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2[4])[/4]         a b e f + + + r t y z c d + 2 ^ /
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          |-|
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2[4])[/4]         a b e f + + + r t y z c d + 2 ^ / -
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2[4])[/4]         a b e f + + + r t y z c d + 2 ^ / - +
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |+|
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2[4])[/4]         a b e f + + + r t y z c d + 2 ^ / - + +
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          |(|
                          |*|
                          '-'

(a+b+e+f)*(r+t+y-z/(c+d)^2)         a b e f + + + r t y z c d + 2 ^ / - + + *
                             .------->
                            /
                           |
                    pile  | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          | |
                          '-'


et:

a b e f + + + r t y z c d + 2 ^ / - + + *

love

(hum c ptetre un peu long ce post triso)
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

26

et un parser, pour moi c un analyseur syntaxique... smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

27

ohh, c joli love
warau kado niha fuku kitaru.

#trifouet#!!!

28

triso
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

29

cool la méthode top
finalement avec ça évaluer une expression algébrique ça devient assez simple !

30

non, c'est hyper simple, c'est ce qu'on a fait pour notre bistro...

c'est quoi ton bistro ?
Yeah !