Dans le cas que tu mentionnes, je ne vois absolument pas en quoi le fait d'utiliser une notation infixe assure à l'élève que l'opérateur définit un groupe abélien : le signe < est tout aussi infixe, et pourtant donne une fonction tout sauf commutative.
Nous sommes tout à fait d'accord, ce n'est pas le fait d'utiliser une notation pré-fixée qui va compliquer les choses (sur cet aspect), je n'ai pas été claire. Ce que je dis c'est que toutes les fonctions ne sont pas équivalentes, en témoignent les deux lois qui définissent une structure algébrique telle un corps commutatif. Je rebondissais donc sur le "histoire que ce soit bien clair que ces fonctions ne diffèrent pas par quelque magie des autres": il y a des fonctions qui sont différentes des autres par hypothèse. + et * ne sont pas des fonctions "comme les autres" sur un corps commutatif. Elles sont même très particulières... De même pour les relations d'ordre qui sont définies avec tout un tas de propriétés singulières, mais je vais cesser ici mon délire algébrique. Leur point commun serait de former des noeuds "équivalents" au sein de l'arbre d'interprétation, mais je crains que rentrer dans ces détails soit un peu complexe à ce niveau d'étude: comme est construit l'arbre a+b+c+d ? Par rapport à celui de a+b*c+d ? Celui de a*b+a*c+a*d ? Combien d'arbres différents sont possibles ? etc. On est sorti des "simples" concepts de boucle, variable et co. et on commence à rentrer dans des aspects de compilation qui te semblent être une barrière.
Et puis, enseigner le détail de propriétés algébriques des fonctions qu'il utilise à un élève, c'est pas vraiment, je pense, ce qu'il attend pour un cours de base sur l'algorithmique. Si c'est pour étudier ce genre de choses, autant passer direct à faire du coq, et démontrer soi-même que + est commutatif :)
Tout à fait, enseigner les détails des propriétés algébriques trop tôt, ça a déjà été essayé et ça a été un échec retentissant (je pense au triste épisode des "maths modernes"). Je rentre dans ces détails car nous sommes entre nous, et il me servent à montrer que toutes les fonctions ne sont pas équivalentes.
[^] # Re: Syntaxe lispienne, est-ce bien raisonnable ?
Posté par Leslie Basmid . En réponse à la dépêche MicroAlg: langage et environnements pour l’algorithmique. Évalué à 0.
Nous sommes tout à fait d'accord, ce n'est pas le fait d'utiliser une notation pré-fixée qui va compliquer les choses (sur cet aspect), je n'ai pas été claire. Ce que je dis c'est que toutes les fonctions ne sont pas équivalentes, en témoignent les deux lois qui définissent une structure algébrique telle un corps commutatif. Je rebondissais donc sur le "histoire que ce soit bien clair que ces fonctions ne diffèrent pas par quelque magie des autres": il y a des fonctions qui sont différentes des autres par hypothèse. + et * ne sont pas des fonctions "comme les autres" sur un corps commutatif. Elles sont même très particulières... De même pour les relations d'ordre qui sont définies avec tout un tas de propriétés singulières, mais je vais cesser ici mon délire algébrique. Leur point commun serait de former des noeuds "équivalents" au sein de l'arbre d'interprétation, mais je crains que rentrer dans ces détails soit un peu complexe à ce niveau d'étude: comme est construit l'arbre a+b+c+d ? Par rapport à celui de a+b*c+d ? Celui de a*b+a*c+a*d ? Combien d'arbres différents sont possibles ? etc. On est sorti des "simples" concepts de boucle, variable et co. et on commence à rentrer dans des aspects de compilation qui te semblent être une barrière.
Tout à fait, enseigner les détails des propriétés algébriques trop tôt, ça a déjà été essayé et ça a été un échec retentissant (je pense au triste épisode des "maths modernes"). Je rentre dans ces détails car nous sommes entre nous, et il me servent à montrer que toutes les fonctions ne sont pas équivalentes.