{"id":16673116,"url":"https://github.com/ph-7/peachlang","last_synced_at":"2025-04-09T20:05:39.083Z","repository":{"id":144638249,"uuid":"106592452","full_name":"pH-7/PeachLang","owner":"pH-7","description":":peach: PeachLang™ is a simple interpreted language done with Ruby using Racc (the Ruby version of Yacc/Bison). The language has been made thanks to MACournoyer's book http://01script.com/comment-creer-son-langage-de-programmation/","archived":false,"fork":false,"pushed_at":"2023-04-02T02:08:35.000Z","size":50,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-09T20:05:33.325Z","etag":null,"topics":["bison","interpreted-language","interpreted-languages","interpreted-programming-language","interpreter","language","own-language","parser","peach-language","peachlang","programming","programming-language","programming-languages","racc","ruby","simple-programming-language","yacc"],"latest_commit_sha":null,"homepage":"https://github.com/pH-7/PeachLang","language":"Ruby","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/pH-7.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},"funding":{"ko_fi":"phenry","github":"pH-7"}},"created_at":"2017-10-11T18:20:21.000Z","updated_at":"2025-01-27T08:00:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7f5bd4b-fb0a-4d95-a9d1-f76e906d1dc1","html_url":"https://github.com/pH-7/PeachLang","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/pH-7%2FPeachLang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pH-7%2FPeachLang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pH-7%2FPeachLang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pH-7%2FPeachLang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pH-7","download_url":"https://codeload.github.com/pH-7/PeachLang/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248103872,"owners_count":21048245,"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":["bison","interpreted-language","interpreted-languages","interpreted-programming-language","interpreter","language","own-language","parser","peach-language","peachlang","programming","programming-language","programming-languages","racc","ruby","simple-programming-language","yacc"],"created_at":"2024-10-12T12:24:38.867Z","updated_at":"2025-04-09T20:05:39.076Z","avatar_url":"https://github.com/pH-7.png","language":"Ruby","funding_links":["https://ko-fi.com/phenry","https://github.com/sponsors/pH-7"],"categories":[],"sub_categories":[],"readme":"# PeachLang 🍑 (Programming Language)\n\n**PeachLang™** is a simple interpreted programming language done with Ruby using Racc for the parser (Racc is the Ruby version of Yacc/Bison). The language has been made thanks to [MACournoyer's book](http://01script.com/comment-creer-son-langage-de-programmation/).\n\nAlthough my favorite book (my bedside book TBH! 👌) is by far the [Dragon Book](https://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools), Marc-André's book is also a really good one! 😊\n\n\n## 📓 Usage\n\nFrom your terminal, you can execute the example peach file:\n\n```bash\nruby src/PeachLang examples/PeachLang/say-hello.peach\n```\n\nOr... use the interactive shell, like\n\n```bash\nPeachLang Interpreter\nCTRL+R to quit\n\u003e\u003e say(\"Hi\")\nHi\n=\u003e nil\n```\n\n\n## ⚙️ Modify \"grammar.y\"\n\nIf you change `grammar.y` parsing rules, you will need to regenerate `parser.rb` file by using the following command:\n```bash\nracc -o parser.rb grammar.y\n```\n\nP.S. You will need to install Racc before doing it:\n```bash\ngem install racc\n```\n\n## 🚀 Other Programming Languages I've Done\n\n* [JoraLang](https://github.com/pH-7/JoraLang)\n* [GoYa Programming Language](https://github.com/pH-7/GoYa)\n\n\n## ✉️ Contact\n\nAny questions, please ask me at *hi {{ AT }} ph7 {{ D0T }} me* or visit [my personal website](https://ph7.me).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fph-7%2Fpeachlang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fph-7%2Fpeachlang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fph-7%2Fpeachlang/lists"}