csmlinterpreter 0.2.0

The CSML (Conversational Standard Meta Language) is a Domain-Specific Language developed for creating conversational experiences easily.
Documentation
start:
    goto end

step1:
    use Object(
        value = "val",
        toto = Object( 
            plop = 4,
            action2 = Object(
                toto = "toto",
                tutu = "tutu",
                empty = "",
            ),
        ),
        test = Object(pui = 7),
        vec = [Object(test = 1) , 2, 3, 4, 5, 6,],
    ) as var

    say var.vec[0].test
    goto end

step2:
    use Object(
        value = "val",
        toto = Object( 
            plop = 4,
            action2 = Object(
                toto = "toto",
                tutu = "tutu",
                empty = "",
            ),
        ),
        test = Object(pui = 7),
        vec = [Object(test = 1) , 2, 3, 4, 5, 6,],
    ) as var


    say var.toto.plop
    goto end

step3:
    use Object(
        value = "val",
        toto = Object( 
            plop = 4,
            action2 = Object(
                toto = "toto",
                tutu = "tutu",
                empty = "",
            ),
        ),
        test = Object(pui = 7),
        vec = [Object(test = 1) , 2, 3, 4, 5, 6,],
    ) as var

    use var.toto.plop as var1
    use var.vec[0].test as var2

    say var1 > var2
    goto end

step4:
    use Object(
        value = "val",
        toto = Object( 
            plop = 4,
            action2 = Object(
                toto = "toto",
                tutu = "tutu",
                empty = "",
            ),
        ),
        test = Object(pui = 7),
        vec = [Object(test = 1) , 2, 3, 4, 5, 6,],
    ) as var


    use OneOf(
        [
            var,
            "test",
            Button(
                OneOf(["non", "bof", "je le sens pas"])
            )
        ]
    ) as plop
    say plop

    goto end

step5:
    say "{{ OneOf(["1", "2", "{{ OneOf([4, 5])  }}"])  }}"

    goto end