{"id":17844253,"url":"https://github.com/gldanoob/nooblang-rust","last_synced_at":"2025-04-02T15:10:36.015Z","repository":{"id":144798432,"uuid":"586189426","full_name":"gldanoob/nooblang-rust","owner":"gldanoob","description":"NOOBLANG interpreter but in Rust (not blazingly fast)","archived":false,"fork":false,"pushed_at":"2023-01-13T13:44:55.000Z","size":35,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T05:44:35.363Z","etag":null,"topics":["esolang","esoteric-programming-language","interpreter","lexer","parser","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/gldanoob.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-01-07T08:54:22.000Z","updated_at":"2023-01-13T02:59:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"381f4393-2ac6-44ba-ba2c-306a80a24ee3","html_url":"https://github.com/gldanoob/nooblang-rust","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gldanoob%2Fnooblang-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gldanoob%2Fnooblang-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gldanoob%2Fnooblang-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gldanoob%2Fnooblang-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gldanoob","download_url":"https://codeload.github.com/gldanoob/nooblang-rust/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246837683,"owners_count":20841903,"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","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":["esolang","esoteric-programming-language","interpreter","lexer","parser","rust"],"created_at":"2024-10-27T21:28:29.951Z","updated_at":"2025-04-02T15:10:35.996Z","avatar_url":"https://github.com/gldanoob.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NOOBLANG\n\n**The Perfect (Esoteric) Programming Language for Beginners**\n- ❌ No symbols (except `\"`)\n- ❌ No `for`, `while` loops, functions (too overwhelming for starters)\n- ❌ No data structures like arrays (a pain to understand)\n- ❌ No variable scoping rules and stuff\n- ✔️ Everything done with `if`s and procedures (`run`ning lines of code)\n\n\u003cbr\u003e\n\n# Examples\n## Prime numbers between 0 and 100:\n```\nx be 2                         \nprime be yes                  \ny be 1                     \ny be y plus 1\nrun 8 to 11 if y is x      \nprime be no if x mod y is 0\nrun 4 to 7\nwrite x if prime \nx be x plus 1\nend if x atleast 100\nrun 2 to 11\n```\n\nMost of the syntax shouldn't be hard to understand (they're designed for beginners),\nbut in case you're wondering, `run` runs the line(s) of code with the given line number\n\nSo `run 8 to 11 if y is x` runs lines 8-11 if `x` is equal to `y`  \n\n\u003cbr\u003e\n\n## Pascal's triangle\nNo arrays? Not a problem:\n```\nwrite \"Enter number of rows (1 ~ 10): \"\nn be num read\nrun 25 to 26 if n mod 1 isnt 0 or n below 1 or n above 10\na be 1\ni be 0\n    s be \"\"\n    j be i\n    x be 0\n    run 29 plus i\n        run 20 to 23 if j is 0\n        run j plus 38\n        x be y\n        run j plus 39\n        x be x plus y\n        run j plus 28\n        s be s plus \" \" plus text x\n\n        j be j minus 1\n    run 10 to 19\n    write s plus \" 1\"\n    i be i plus 1\n    end if i is n\nrun 6 to 23\n\nwrite \"Need integer between 1 and 10 inclusive\"\nrun 1 to 23\n\na be x\nb be x\nc be x\nd be x\ne be x\nf be x\ng be x\nh be x\nk be x\nl be x\n\ny be a\ny be b\ny be c\ny be d\ny be e\ny be f \ny be g\ny be h\ny be k\ny be l\n```\n\n\u003cbr\u003e\n\n# TODO\n- Alphanumeric variable names\n- Escape characters\n- Tutorial/Docs (god damn)\n- Prove turing completeness (Probably a brainf interpreter)\n- Fix column numbers of errors\n- Bytecode compiler? Nah, I don't have time\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgldanoob%2Fnooblang-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgldanoob%2Fnooblang-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgldanoob%2Fnooblang-rust/lists"}