shelly-shell 0.5.0

A Rust based Unix style shell with a typed and structured language syntax.
check_repl ["id": "NUMERIC-REPL", "name": "Numeric widening and atomic failures",
    "steps": [
        ["let \$number: Float = 7", "quiet", ""],
        ["echo \$number (\$number / 2)", "output", "7.0 3.5"],
        ["let \$literal: Float = 7.0; echo \$literal", "output", "7.0"],
        ["\$number = 9", "quiet", ""],
        ["echo \$number (\$number / 2)", "output", "9.0 4.5"],
        ["let \$number: Integer = \$number", "error", "Expected Integer"],
        ["echo \$number (\$number / 2)", "output", "9.0 4.5"],
        ["let \$floats: [Float] = [7]", "quiet", ""],
        ["let \$bad = [9, \"bad\"]", "quiet", ""],
        ["\$floats = \$bad", "error", "Expected Float"],
        ["echo (\$floats[0] / 2)", "output", "3.5"],
        ["echo (\$bad[0] / 2)", "output", "4"],
        ["let \$integer: Integer = 7", "quiet", ""],
        ["\$integer = 9.0 / 2", "error", "Expected Integer"],
        ["echo \$integer", "output", "7"],
        ["echo (Integer(8.0) / 2)", "output", "4"],
        ["\$integer = \"7\" + 2", "error", "Strings cannot be used in arithmetic"],
        ["echo \$integer", "output", "7"],
        ["echo \$number (\$number / 2)", "output", "9.0 4.5"],
        ["echo (\"Hello, \" + \"world!\")", "output", "Hello, world!"]
    ], "exit": 0]