cl4cnam / simulPersonne

0 stars 0 forks source link

Bug SugarCubes ? #1

Closed cl4cnam closed 6 years ago

cl4cnam commented 6 years ago

Dans la branche testBug1Hub Avec ce code :

    SC.repeat(SC.forever,
        SC.par(
            SC.actionOn(evt, SC.nothing()),
            SC.act(()=>console.log('instant : ', m.instantNumber))
        )
    )

l'action ne se produit que tous les deux instants.

J'ai mis un SugarCubes.js simplifié (et j'ai ajouté des console.log) pour essayer de comprendre ce qu'il se passe.

LordManta commented 6 years ago

Bonjour,

C’est normal, SugarCubesJS a une sémantique légèrement différente de celle de SugarCubes v5 : SC.repeat(… p) déroule systématiquement p en mettant un pause en séquence:

repeat p end -> p';pause; repeat p end

Comme actionOn consomme déjà un instant, avec le repeat on en consomme 2 d’où une exécution un instant sur 2.

Pour écrire le même programme en 1 instant il faudrait écrire :

SC.par( SC.actionOn(evt, SC.NO_FUN, undefined, SC.forever) , SC.action(()=>console.log('instant : ', m.instantNumber, SC.forever) )

Donc non ce n’est pas un bug mais un changement de sémantique.

— Jean-Ferdy

Le 20 sept. 2018 à 12:23, cl4cnam notifications@github.com a écrit :

Avec ce code :

SC.repeat(SC.forever, SC.par( SC.actionOn(evt, SC.nothing()), SC.act(()=>console.log('instant : ', m.instantNumber)) ) ) l'action ne se produit que tous les deux instants.

J'ai mis un SugarCubes.js simplifié (et j'ai ajouté des console.log) pour essayer de comprendre ce qu'il se passe.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/cl4cnam/simulPersonne/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-ft3rla2MSdvgUCkL2-_maClAHB-1Iks5uc2yzgaJpZM4Wx1Dg.

cl4cnam commented 6 years ago

Merci :)