lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Résolution de l'équation iScheme = infix (Scheme)


From: Jean Abou Samra
Subject: Re: Résolution de l'équation iScheme = infix (Scheme)
Date: Wed, 8 Jun 2022 23:22:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1

Bonjour,

Le 08/06/2022 à 19:08, Bernard Barbier a écrit :

Hello,

L'idée est excellente, mais il faudrait un truc comme bison et flex pour parser le tout.  Et ça, je ne sais plus faire...

La biblio donne beaucoup de réponses sur /Scheme to C/, mais pas l'inverse, c'est que ça doit être graton comme on dit à Lyon.



Guile 2 (la version de Guile utilisée dans LilyPond 2.23) possède un équivalent à Bison qui permet d'écrire un analyseur syntaxique sans sortir de Scheme, ou plutôt deux : un générateurs d'analyseurs LALR(1), comme Bison, et un pour les analyseurs PEG.

https://www.gnu.org/software/guile/manual/html_node/LALR_00281_0029-Parsing.html

https://www.gnu.org/software/guile/manual/html_node/PEG-Parsing.html

Par conséquent, il serait tout à fait envisageable de définir cette syntaxe dans un fichier à \include, sans toucher au code de LilyPond.


Utile, je pense quand même : combien parmi les anciens (dont je fais partie) et même la jeunesse ont appris LISP à l'école (et même parfois sous la torture), juste pour le partiel de juin ?

Dès qu'on a compris que c'était un langage à pile, je pense qu'on a compris beaucoup de choses (d'mon temps, on apprenait même la notation polonaise inverse ! )

Du coup, Scheme devient /relativement/ listble, mais... de là à être écrit... Donc utile, et ça vaudrait presque le coup d'y mettre un thésard en info !



Oh, pas besoin d'un thésard : une fois la syntaxe définie, je ne crois pas que l'implémenter devrait poser de problème majeur. Par contre, à titre personnel, je serai plutôt concentré sur les grilles d'accords cette semaine.

Comme je le disais à Jacques, je suis curieux des réponses sur ce fil (merci pour celles déjà données). Comme l'apprentissage de Scheme est un point qui cause régulièrement des difficultés, j'aimerais comprendre où ça coince. Mon expérience personnelle est plutôt faite d'un chemin tortueux pour comprendre le principe de la programmation fonctionnelle, mais il est tout à fait possible que pour d'autres cela soit plutôt compliqué au niveau de la syntaxe parenthésée et préfixe.

Même si je n'imagine pas abandonner moi-même un jour la syntaxe « normale », ne serait-ce que parce que tout le code Scheme de LilyPond est écrit comme cela, je serai intéressé de voir si cela aide les débutants.


Juste en passant... Peut être qu'avec Bigloo Scheme ?...
Si quelqu'un a le temps de regarder...


À quoi fais-tu référence ? En lisant la table des matières de la documentation de Bigloo Scheme, je n'ai rien trouvé qui parle de syntaxe infixe.

Cordialement,
Jean




reply via email to

[Prev in Thread] Current Thread [Next in Thread]