Subject: [LilyPond] Annonce : LilyPond devient LiPyPond

From: Jean Abou Samra via LilyPond <[email-masked]>
Date: Tue, 01 Apr 2025 21:40:55 +0000

Bonjour à toutes et à tous,

Pour continuer la série après Frescobaldi 3.0, voici une nouvelle annonce, concernant le logiciel LilyPond lui-même cette fois. Comme je viens de l'apprendre sur la liste de développement (que je ne suis plus que de loin), il a été décidé que dans sa prochaine version majeure, la 3.0, LilyPond sera renommé en LiPyPond.

En effet, un effort est en cours depuis plusieurs mois pour ajouter Python comme langage d'extension en plus de Scheme (et à terme, probablement en remplacement complet de Scheme, mais ce serait pour une 4.0, tandis que dans la 3.0 les deux continueront à coexister). Les détails restent à peaufiner, mais il y aura en gros une syntaxe `!{ … !}` pour insérer un bloc de code Python, et une API fournie par un module `ly` semblable à l'ensemble des fonctions Scheme en `ly:…`. Par exemple, il deviendra possible de faire

```
t = 0.2
{
  \override Stem.thickness = !{ t/2 !}
  c'
}
```

au lieu de

```
t = 0.2
{
  \override Stem.thickness = #(/ t 2)
  c'
}
```

ou encore

```
!{
def tr(grob, orig):
    return orig + 0.1
!}

{
  \override Stem.thickness = !{ ly.grob_transformer(tr) !}
  c'
}
```

au lieu de

```
{
  \override Stem.thickness = #(grob-transformer (lambda (grob orig) (+ orig 0.1)))
  c'
}
```

La sortie de cette nouvelle version est pour l'instant prévue pour juillet.

~~LilyPondement~~ LiPyPondement,
Jean

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/1).

Pour créer un nouveau sujet, écrivez à [[email-masked]](mailto:[email-masked]) ou visitez la [page d'accueil de lilypond.community](https://lilypond.community).

---

From: Ben via LilyPond <[email-masked]>
Date: Tue, 01 Apr 2025 21:51:30 +0000

Python, poisson et nénuphar ne font pas bon ménage...
-------- Message d'origine --------De : Jean Abou Samra via LilyPond <[email-masked]> Date : 01.04.25  23:40  (GMT+01:00) À : [email-masked] Objet : [LilyPond] Annonce : LilyPond devient LiPyPond 

  

        

          Jean Abou Samra
            jeanas
        
        Avril 1

  Bonjour à toutes et à tous,
Pour continuer la série après Frescobaldi 3.0, voici une nouvelle annonce, concernant le logiciel LilyPond lui-même cette fois. Comme je viens de l'apprendre sur la liste de développement (que je ne suis plus que de loin), il a été décidé que dans sa prochaine version majeure, la 3.0, LilyPond sera renommé en LiPyPond.
En effet, un effort est en cours depuis plusieurs mois pour ajouter Python comme langage d'extension en plus de Scheme (et à terme, probablement en remplacement complet de Scheme, mais ce serait pour une 4.0, tandis que dans la 3.0 les deux continueront à coexister). Les détails restent à peaufiner, mais il y aura en gros une syntaxe !{ … !} pour insérer un bloc de code Python, et une API fournie par un module ly semblable à l'ensemble des fonctions Scheme en ly:…. Par exemple, il deviendra possible de faire
t = 0.2
{
  \override Stem.thickness = !{ t/2 !}
  c'
}

au lieu de
t = 0.2
{

ou encore
!{
def tr(grob, orig):
    return orig + 0.1
!}

{

au lieu de
{

La sortie de cette nouvelle version est pour l'instant prévue pour juillet.
LilyPondement LiPyPondement,
Jean

Pour poster dans ce sujet, visitez la page du sujet.
Pour créer un nouveau sujet, écrivez à [email-masked] ou visitez la page d'accueil de lilypond.community.
  
Pour vous désabonner de ces e-mails, modifiez vos préférences.

  

                         

    
      @media (prefers-color-scheme: dark) {
        html {
          background: #151515 !important;
        }

        h1,
        h2,
        h3,
        h4,
        h5,
        h6,
        p,
        span,
        td {
          color: inherit !important;
        }

        [data-stripped-secure-media] {
          border-color: #454545 !important;
        }

        [data-stripped-secure-upload] {
          border-color: #454545 !important;
        }

        [dm='text-color'] {
          color: #dddddd;
        }

        [dm='header'] {
          background: #151515 !important;
        }

        [dm='topic-body'] {
          background: #151515 !important;
          border-bottom: 1px solid #454545 !important;
        }

        [dm='triangle'] {
          border-top-color: #151515 !important;
        }

        [dm='body'] {
          background: #222222 !important;
          color: #dddddd !important;
        }

        [dm='body_primary'] {
          background: #062e3d !important;
          color: #dddddd !important;
        }

        [dm='bg'] {
          background: #323232 !important;
          border-color: #454545 !important;
        }
      }

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/2).

---

From: Gilles via LilyPond <[email-masked]>
Date: Tue, 01 Apr 2025 22:20:22 +0000

LiPyPond :rofl:

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/3).

---

From: MartialR via LilyPond <[email-masked]>
Date: Wed, 02 Apr 2025 05:07:01 +0000

:rofl:

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/4).

---

From: Sébastien Richard via LilyPond <[email-masked]>
Date: Wed, 02 Apr 2025 07:27:35 +0000

:joy:

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/5).

---

From: Jean Abou Samra via LilyPond <[email-masked]>
Date: Wed, 02 Apr 2025 11:56:43 +0000

Blague à part, pour l'anecdote, il y a quelques années, je me suis amusé pour de vrai à faire tourner Python à l'intérieur de LilyPond — pas en lançant la commande `python` dans un sous-processus, mais vraiment en mémoire partagée dans le même processus, de la même manière que les exemples de mon poisson d'avril :

https://lists.gnu.org/archive/html/lilypond-user/2023-02/msg00163.html

(mais bien sûr ça ne donne pas une intégration pratique du tout avec LilyPond et faire coexister en harmonie les deux garbage collectors serait une horreur).

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/6).

---

From: Ben via LilyPond <[email-masked]>
Date: Wed, 02 Apr 2025 13:35:21 +0000

En fait, ce n'est pas tant le Scheme le problème, même s'il est plus pénible à manipuler que le Python, mais plutôt de savoir comment communiquer avec les routines lilypond. 

Et pour cela, la seule doc, c'est le code source de lliypond, et réussir à comprendre et maitriser le code source lilypond est un gros investissement en temps.

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/annonce-lilypond-devient-lipypond/5892/7).