{"id":20559000,"url":"https://github.com/danpeo/dvarscript","last_synced_at":"2025-08-31T12:13:53.634Z","repository":{"id":199559221,"uuid":"701770382","full_name":"Danpeo/DVarScript","owner":"Danpeo","description":"DVarScript is an interpreted dynamically typed programming language. The interpreter is written in C#.","archived":false,"fork":false,"pushed_at":"2024-02-02T15:13:39.000Z","size":65,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-06T07:32:49.410Z","etag":null,"topics":["c-sharp","interpreter","language"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Danpeo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-07T14:02:50.000Z","updated_at":"2024-02-03T09:04:23.000Z","dependencies_parsed_at":"2025-01-16T18:54:09.368Z","dependency_job_id":"67fde93a-bae0-40e6-95bc-5a75f30233ec","html_url":"https://github.com/Danpeo/DVarScript","commit_stats":null,"previous_names":["danpeo/danilvarscript"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Danpeo/DVarScript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Danpeo%2FDVarScript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Danpeo%2FDVarScript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Danpeo%2FDVarScript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Danpeo%2FDVarScript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Danpeo","download_url":"https://codeload.github.com/Danpeo/DVarScript/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Danpeo%2FDVarScript/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272977894,"owners_count":25025221,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-31T02:00:09.071Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp","interpreter","language"],"created_at":"2024-11-16T03:48:17.680Z","updated_at":"2025-08-31T12:13:53.613Z","avatar_url":"https://github.com/Danpeo.png","language":"C#","readme":"# DVarScript\n\nDVarScript is an interpreted dynamically typed programming language.\nThe interpreter is written in C#.\n\n\nIn order to write a Hello World program, you can do the following:\n\n```\nprintln(\"Hello World!\");\n```\n\nData types:\n  - **Boolean:** has two values `true` and `false`\n  - **Number:** is integer or double-precision floating point (`69`, `3.14`).\n  - **String:** represents a sequence of Unicode characters.  They are enclosed in double quotes (`\"Naruto\"`, `\"\"` (empty string), `\"69\"`).\n  - **Nil:** is a special value that indicates the absence of a value.\n\n## Expressions\n\nExpression is a combination of values, variables, operators, and functions that produces a single value. \n\n### Arithmetic\n\nAdd two numbers:\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a + b;\n```\n\nSubtract one number from another:\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a - b;\n```\n\nMultiply two numbers:\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a * b;\n```\n\nDivide one number by another:\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a / b;\n```\n\n### Comparison and Equality\n\nComparison and equality operators are used to compare two values and determine if they are equal or not.\n\nEqual to (==): Returns true if both the values on either side of the operator are equal, false otherwise.\n\n```\nlet a be 5;\nlet b be 5;\nlet c be a == b; // c will be true\n```\n\nNot equal to (!=): Returns true if both the values on either side of the operator are not equal, false otherwise.\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a != b; // c will be true\n```\n\nGreater than (\u003e): Returns true if the value on the left is greater than the value on the right, false otherwise.\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a \u003e b; // c will be false\n```\n\nLess than (\u003c): Returns true if the value on the left is less than the value on the right, false otherwise.\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a \u003c b; // c will be true\n```\n\nGreater than or equal to (\u003e=): Returns true if the value on the left is greater than or equal to the value on the right, false otherwise.\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a \u003e= b; // c will be false\n```\n\nLess than or equal to (\u003c=): Returns true if the value on the left is less than or equal to the value on the right, false otherwise.\n\n```\nlet a be 5;\nlet b be 10;\nlet c be a \u003c= b; // c will be true\n```\n\n### Logical operators\n\nThe not operator, a prefix `!`, returns false if its operand is true, and vice versa.\n\n```\n!true;  // false.\n!false; // true.\n```\n\nAn `and` expression determines if two values are both true.\n\n```\ntrue and false; // false.\ntrue and true;  // true.\n```\n\nAn `or` expression determines if either of two values or both are true.\n\n```\nfalse or false; // false.\ntrue or false;  // true.\n```\n\n### Precedence and grouping\n\nPrecedence refers to the order in which operators are evaluated in an expression.\nFor example, in arithmetic expressions, multiplication and division have higher precedence than addition and subtraction.\nThis means that expressions such as `2 + 3 * 4` are evaluated as `(2 + 3) * 4`, rather than `2 + (3 * 4)`.\n\n### Statements\n\nA statement is a unit of code that performs an action. Statements can be simple, such as declaring a variable, or complex, such as an if-else statement.\n\nDeclaration statement: Declares a variable and assigns it a value. If you omit the initializer, the variable’s value defaults to `nil`.\n\n```\nlet x be 69;\nlet isNil; // is nil\n```\n\nIf-else statement: Executes a statement if a condition is true, or another statement if the condition is false.\n\n```\nif (x \u003e 10) {\n  println(\"x is greater than 10\");\n} else {\n  println(\"x is less than or equal to 10\");\n}\n```\n\nA while loop executes the body repeatedly as long as the condition expression evaluates to true.\n\n```\nlet a be 1;\nwhile (a \u003c 10) {\n  println(a);\n  a = a + 1;\n}\n```\n\nFor loop: Loops through a set of statements a specified number of times.\n\n```\nfor (let i be 0; i \u003c 10; i = i + 1) {\n  println(i);\n}\n```\n\n### Functions\n\nA function is a block of code that performs a specific task and can be called multiple times with different inputs. \n\n```\nfunc sum(a, b) {\n  return a + b;\n}\n\nlet result be sum(5, 10);\nprintln(result); // 15\n```\n\n\n\n\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanpeo%2Fdvarscript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanpeo%2Fdvarscript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanpeo%2Fdvarscript/lists"}