diff --git a/src/interpreter.rs b/src/interpreter.rs index 6892557..b2aa81b 100644 --- a/src/interpreter.rs +++ b/src/interpreter.rs @@ -131,6 +131,9 @@ impl Interpreter { "ErrExit" => { self.err_exit(); } + "clear" => { + self.clear(); + } "break" => return Value::String("break".to_string()), "continue" => return Value::String("continue".to_string()), value => { @@ -147,6 +150,10 @@ impl Interpreter { return Value::Null; } + fn clear(&self) { + print!("{}[2J", 27 as char); + } + fn if_node(&mut self, value: &Map) -> Value { let condition = self.eval_node(&value["condition"]); let nodes = &value.get("body"); diff --git a/static/logos/OnLang-mini-white-transparent.png b/static/logos/OnLang-mini-white-transparent.png new file mode 100644 index 0000000..3abd8da Binary files /dev/null and b/static/logos/OnLang-mini-white-transparent.png differ diff --git a/static/logos/OnLang-mini-white.png b/static/logos/OnLang-mini-white.png new file mode 100644 index 0000000..c1bc5e1 Binary files /dev/null and b/static/logos/OnLang-mini-white.png differ diff --git a/static/logos/OnLang-transparent.png b/static/logos/OnLang-transparent.png new file mode 100644 index 0000000..62e415a Binary files /dev/null and b/static/logos/OnLang-transparent.png differ diff --git a/static/logos/OnLang-white.png b/static/logos/OnLang-white.png new file mode 100644 index 0000000..f8a1137 Binary files /dev/null and b/static/logos/OnLang-white.png differ diff --git a/test.json5 b/test.json5 index ebdd119..4ca337f 100644 --- a/test.json5 +++ b/test.json5 @@ -226,110 +226,13 @@ }, }, - // { - // print: [ - // { - // print: [ - // { ░██╗░░░░░░░██╗░█████╗░████████╗ - // print: [ ░██║░░██╗░░██║██╔══██╗╚══██╔══╝ - // { ░╚██╗████╗██╔╝███████║░░░██║░░░ - // print: [ ░░████╔═████║░██╔══██║░░░██║░░░ - // { ░░╚██╔╝░╚██╔╝░██║░░██║░░░██║░░░ - // print: [ ░░░╚═╝░░░╚═╝░░╚═╝░░╚═╝░░░╚═╝░░░ - // { print: [{ print: [{ print: [{ print: "wat" }] }] }] }, - // ], - // }, - // ], - // }, - // ], - // }, - // ], - // }, - // ], - // }, - - // //print functions - // { - // print: ["Hello world", "! ", 1, "\n", ["wow"], "\n", { calc: [1, "+", 2] }], - // }, - // { - // println: ["Hello", "world", "!"], - // }, - // { - // print: "Fool", - // }, - // "Really?", - - // [2, "Yes \n", true], - - // true, //throw error - - // //Exit functions - // "Exit", - // "ErrExit", + "clear", // //TODO CONCEPTS ########################################################################################################################################################################################################################## - // //variables------------ - - // //defining variables - // { - // let: { - // var: "value", - // anotherVar: true, - // }, - // }, - - // //print variables - // { print: "@var" }, - // ["This is ", "@var"], - - // //assign variables - // { - // assign: { var: "newvalue" }, - // }, - - // //------------------- - - // //math-------------- - // { - // calc: ["@var", "+", 1], - // }, - - // //or - // { - // calc: ["@var", "+", { calc: [1, "*", 2] }], - // }, - // //------------------ - - // //comparison-------- - // { - // comp: [1, ">=", "@var"], - // }, - // //or - // { - // comp: [ - // { comp: [{ calc: [1, "+", 1] }, ">", 1] }, - // "&&", - // { comp: ["@var", ">=", 2] }, - // ], - // }, - // //------------------ - - // //cycles - // { - // loop: [ - // { - // let: { - // var: "val", - // }, - // }, - // "@var", - // ], - // }, // { // while: { - // cond: { comp: [1, ">=", "@var"] }, + // cond: { comp: [1, ">=", {var: "variable"}] }, // body: [ // //commands // ],