{"id":21569405,"url":"https://github.com/aweirddev/dreamberd-interpreter","last_synced_at":"2025-03-18T05:45:13.201Z","repository":{"id":182335284,"uuid":"668333871","full_name":"AWeirdDev/dreamberd-interpreter","owner":"AWeirdDev","description":"interpreter for the perfect programming language","archived":false,"fork":false,"pushed_at":"2023-07-21T02:53:38.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-24T12:32:30.565Z","etag":null,"topics":["dreamberd","interpreter","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AWeirdDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-07-19T14:57:48.000Z","updated_at":"2023-07-20T07:46:22.000Z","dependencies_parsed_at":"2024-04-28T12:44:06.044Z","dependency_job_id":"33032be5-05bf-4628-bdc8-8a204520bd76","html_url":"https://github.com/AWeirdDev/dreamberd-interpreter","commit_stats":null,"previous_names":["aweirdscratcher/dreamberd-interpreter","aweirddev/dreamberd-interpreter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AWeirdDev%2Fdreamberd-interpreter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AWeirdDev%2Fdreamberd-interpreter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AWeirdDev%2Fdreamberd-interpreter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AWeirdDev%2Fdreamberd-interpreter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AWeirdDev","download_url":"https://codeload.github.com/AWeirdDev/dreamberd-interpreter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244166677,"owners_count":20409178,"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":["dreamberd","interpreter","python3"],"created_at":"2024-11-24T11:09:26.533Z","updated_at":"2025-03-18T05:45:13.178Z","avatar_url":"https://github.com/AWeirdDev.png","language":"Python","readme":"# dreamberd-interpreter\nNow the DreamBerd foundation does not own this project.\n\nBig shoutout to [@sus2790](https://github.com/sus2790) for helping me out with this project! Really appreciate it! :heart:\n\n# Installation\n\u003e Update: We recommend you to run this on [Replit](https://replit.com/) if you don't have cargo installed.\n\nTo install, you'll need to install the DreamBerd Installer Installer. [Learn how to](https://github.com/git-guides/install-git)\n\nThen, install the DreamBerd installer \u0026 run it:\n```haskell\n$ git clone https://github.com/AWeirdScratcher/dreamberd-interpreter\n-- Cloning into 'dreamberd-interpreter'...\n-- remote: Enumerating objects: 61, done.\n-- remote: Counting objects: 100% (61/61), done.\n-- remote: Compressing objects: 100% (57/57), done.\n-- remote: Total 61 (delta 24), reused 0 (delta 0), pack-reused 0\n-- Receiving objects: 100% (61/61), 17.98 KiB | 2.25 MiB/s, done.\n-- Resolving deltas: 100% (24/24), done.\n\n$ cd dreamberd-interpreter\n$ python installer.py\n```\n\nThen you're done installing!\n\n# Running\nTo run in your command line:\n```haskell\n$ python3 -m dreamberd your_file.db\n```\n\nor, inline code:\n```haskell\n$ python3 -m dreamberd 'print(\"I love dreamberd\")!'\n```\n\n# Speed\nIt's slow. Perfectly slow. However, using `rure`, it's *a bit* faster. I'm not good at writing interpreters, please forgive me.\n\n\u003e Tested with most of the examples\n\n![speed test](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/450ad902-0960-40da-8a98-fa9c1119a7b4)\n\n\n# Current Features\nThese are the current supported features!\n\n## Basic Print\n```java\nprint(\"DreamBerd!\")!\n```\n\n### MAKE IT BOLD!1!\n```java\nprint(\"DreamBerd\")!!!\n```\n![BOLD](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/026bfc3f-7248-4d14-89ee-b74010c7a79b)\n\n## Booleans\n```java\nconst const dreamberd = ;;true!\nprint(\"Dreamberd is the best programming language: ${dreamberd}\")!\n```\n\n## Error Handling \u0026 AI\n\u003e AI: Auto-Insertion\n```java\nprint(\"this is fine.\")\nprint(\"This is also fine.\"\nerror here!\n```\n\n![These are fine!](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/05439820-bf7b-4eea-86f3-a64309803622)\n\n## Debug Information\n```java\nconst const luke = \"amazing\"!\nprint(\"How is luke\")?\n```\n\n![Debug Info](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/90017b61-2626-40f4-bd18-9665a6da8fcc)\n\n## String Interpolation\nAs stated in the DreamBerd README, this interpreter also detects your local currency symbol and uses it for string interpolation. To check the symbol, simply write:\n```java\n?\n```\nThis is similar to `print()?`, yet more efficient.\n\n![String Interpolation Debug Information](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/8168dd36-bf08-4567-b52a-fd006af44f6b)\n\n\n## File Structure \u0026 Exporting\n\u003e Thanks to recent advances in technology, you can now give files names.\n```java\n===== main.db =====\nconst const luke = \"still amazing\"!\nexport luke to \"second.db\"!\n\n===== second.db =====\nprint(\"Luke is ${luke}\")!\n```\n\n![Exporting and File Structure](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/29eeed9f-3607-4dae-bb24-ac39c7883a52)\n\n## Reverse\nMake sure to put the keyword on the LAST line.\n```java\nprint(\"am i happy? ${happy}\")!\nconst const happy = ;;true!\nreverse!\n```\n![Result after Reversing](https://github.com/AWeirdScratcher/dreamberd-interpreter/assets/90096971/984bee0c-87ff-4adb-93dd-133599a0d95e)\n\n\n# Unsupported Features\n- `var var`\n- ~~`const const const`~~ (not going to)\n- equality, statements... (`==` `!=` `\u003e` `\u003c` `\u003c=` `\u003e=`)\n- emoji naming\n- arrays\n- when\n- lifetimes (priority)\n- arithmetic\n- functions\n- dividing by 0\n- useless types\n- Regular Expressions\n- Previous\n- Classes / ClassNames (may not be following the docs)\n- Time (may not be following the docs)\n- Delete\n- Overloading (may be the last to finish)\n- DBX (may be the last to finish)\n- Async Functions (need help)\n- Signals (doing when arrays are finished)\n- AI (INCOMPLETE)\n- Copilot (if we managed to make the prompts)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faweirddev%2Fdreamberd-interpreter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faweirddev%2Fdreamberd-interpreter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faweirddev%2Fdreamberd-interpreter/lists"}