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:
    do var = {
        "value@toto": "val",
        "toto": {
            "plop": 4,
            "acions2": {
                "toto": "toto",
                "tutu": "tutu",
                "empty": ""
            }
        },
        "^\nplop!@#$%^^*)(": {
            "pui":7
        },
        "vec": [{"test": 1}, 2, 3, 4, 5,]
    }

    say var.vec[0].test
    goto end

step2:
    do var = {
        "value@toto": "val",
        "toto": {
            "plop": 4,
            "acions2": {
                "toto": "toto",
                "tutu": "tutu",
                "empty": ""
            }
        },
        "^\nplop!@#$%^^*)(": {
            "pui":7
        },
        "vec": [{"test": 1}, 2, 3, 4, 5,]
    }

    say var.toto.plop
    goto end

step3:
    do var = {
        "value@toto": "val",
        "toto": {
            "plop": 4,
            "acions2": {
                "toto": "toto",
                "tutu": "tutu",
                "empty": ""
            }
        },
        "^\nplop!@#$%^^*)(": {
            "pui":7
        },
        "vec": [{"test": 1}, 2, 3, 4, 5,]
    }

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

    say var1 > var2
    goto end