{"id":13609282,"url":"https://github.com/dictu-lang/Dictu","last_synced_at":"2025-04-12T20:31:43.634Z","repository":{"id":40240159,"uuid":"162940791","full_name":"dictu-lang/Dictu","owner":"dictu-lang","description":"Dictu is a high-level dynamically typed, multi-paradigm, interpreted programming language.","archived":false,"fork":false,"pushed_at":"2024-12-12T16:06:35.000Z","size":11131,"stargazers_count":269,"open_issues_count":50,"forks_count":51,"subscribers_count":13,"default_branch":"develop","last_synced_at":"2025-04-12T12:08:00.383Z","etag":null,"topics":["bytecode","bytecode-interpreter","c","dictu","hacktoberfest","interpreter","language","programming-language","scripting-language"],"latest_commit_sha":null,"homepage":"https://dictu-lang.com","language":"C","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/dictu-lang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-12-24T02:27:16.000Z","updated_at":"2024-12-31T17:14:05.000Z","dependencies_parsed_at":"2023-02-19T12:45:25.814Z","dependency_job_id":"91a8392c-9db9-46ce-878b-5e8b4ddb0ebf","html_url":"https://github.com/dictu-lang/Dictu","commit_stats":null,"previous_names":[],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dictu-lang%2FDictu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dictu-lang%2FDictu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dictu-lang%2FDictu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dictu-lang%2FDictu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dictu-lang","download_url":"https://codeload.github.com/dictu-lang/Dictu/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248629618,"owners_count":21136282,"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":["bytecode","bytecode-interpreter","c","dictu","hacktoberfest","interpreter","language","programming-language","scripting-language"],"created_at":"2024-08-01T19:01:33.811Z","updated_at":"2025-04-12T20:31:41.944Z","avatar_url":"https://github.com/dictu-lang.png","language":"C","funding_links":[],"categories":["Uncategorized","Other"],"sub_categories":["Uncategorized"],"readme":"# Dictu\n\n*What is Dictu?*\n\nDictu is a high-level dynamically typed, multi-paradigm, interpreted programming language. Dictu has a very familiar\nC-style syntax along with taking inspiration from the family of languages surrounding it, such as Python and JavaScript.\n\n### Dictu documentation\nDocumentation for Dictu can be found [here](https://dictu-lang.com/)\n\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/ab84059049bd4ba7b7b8c1fcfaac4ea5)](https://app.codacy.com/manual/jasonhall96686/Dictu?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=Jason2605/Dictu\u0026utm_campaign=Badge_Grade_Dashboard)\n[![CI](https://github.com/Jason2605/Dictu/workflows/CI/badge.svg)](https://github.com/Jason2605/Dictu/actions)\n\n## Example programs\n```cs\nimport System;\n\nconst guess = 10;\n\nwhile {\n    const userInput = input(\"Input your guess: \").toNumber().unwrap();\n    if (userInput == guess) {\n        print(\"Well done!\");\n        break;\n    } else if (userInput \u003c guess) {\n        print(\"Too low!\");\n    } else {\n        print(\"Too high!\");\n    }\n\n    System.sleep(1);\n}\n```\n\n```cs\ndef fibonacci(num) {\n    if (num \u003c 2) {\n        return num;\n    }\n\n    return fibonacci(num - 2) + fibonacci(num - 1);\n}\n\nprint(fibonacci(10));\n```\n\nMore [here.](https://github.com/Jason2605/Dictu/tree/develop/examples)\n\n## Running Dictu\n\nDictu requires that you have CMake installed and it is at least version 3.16.3.\n\n### Using CMake (at least version 3.16.3 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake -DCMAKE_BUILD_TYPE=Release -B ./build\n$ cmake --build ./build # on Windows add \"--config Release\" here to get a Release build\n$ ./dictu # on Windows the executable is \".\\Release\\dictu.exe\"\n```\n\n### Using CMake presets (version 3.21.0 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake --preset release\n$ cmake --build --preset release\n$ ./dictu # on Windows the executable is \".\\Release\\dictu.exe\"\n```\n\n#### Compiling without HTTP\n\nThe HTTP class within Dictu requires [cURL](https://curl.haxx.se/) to be installed when building the interpreter. If you wish to\nbuild Dictu without cURL, and in turn the HTTP class, build with the `DISABLE_HTTP` flag.\n\n##### Without CMake presets (at least version 3.16.3 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake -DCMAKE_BUILD_TYPE=Release -DDISABLE_HTTP=1 -B ./build \n$ cmake --build ./build # on Windows add \"--config Release\" here to get a Release build\n$ ./dictu # on Windows the executable is \".\\Release\\dictu.exe\"\n```\n\n##### CMake presets (version 3.21.0 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake --preset release-nohttp\n$ cmake --build --preset release\n$ ./dictu # on Windows add \"--config Release\" here to get a Release build\n```\n\n#### Compiling with VCPKG\n\nThis project includes support for the VCPKG C/C++ package manager in [manifest mode](https://learn.microsoft.com/en-us/vcpkg/users/manifests).\nTo enable VCPKG support, the `VCPKG_ROOT` environmental variable must be set to the path of a check-out and bootstrapped\n[vcpkg repository](https://github.com/microsoft/vcpkg) on the compiling machine, and the `ENABLE_VCPKG` cmake flag must be set.\n\nCompiling with VCPKG will enable certain features of Dictu that requires external library features to be automatically pulled and compiled.\n\n##### Without CMake presets (at least version 3.16.3 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_VCPKG=1 -DCMAKE_TOOLCHAIN_FILE=${VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake -B ./build\n$ cmake --build ./build # on Windows add \"--config Release\" here to get a Release build\n$ ./dictu # on Windows the executable is \".\\Release\\dictu.exe\"\n```\n\n##### CMake presets (version 3.21.0 or greater)\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake --preset release-vcpkg\n$ cmake --build --preset release-vcpkg\n$ ./dictu # on Windows add \"--config Release\" here to get a Release build\n```\n\n### Docker Installation\n\nRefer to [Dictu Docker](https://github.com/dictu-lang/Dictu/blob/develop/Docker/README.md)\n\n### FreeBSD Installation\n\nFor a full installation, make sure `curl` is installed. It can be installed from the commands below:\n\n```bash\n$ pkg install -y curl linenoise-ng\n```\n\nThe following variables need to be set/available to run `cmake` successfully.\n\nFor Bourne compatible shells...\n\n```bash\nexport CPATH=/usr/local/include\nexport LIBRARY_PATH=/usr/local/lib\nexport LD_LIBRARY_PATH=/usr/local/lib\n```\n\n```bash\n$ git clone -b master https://github.com/dictu-lang/Dictu.git\n$ cd Dictu\n$ cmake -DCMAKE_BUILD_TYPE=Release -B ./build \n$ cmake --build ./build\n$ ./dictu\n```\n\n## Extensions\n\nDictu has a Visual Studio Code extension [here](https://marketplace.visualstudio.com/items?itemName=Dictu.dictuvsc) with the implementation located\nin the [DictuVSC repo](https://github.com/dictu-lang/DictuVSC).\n\n## Credits\n\nThis language was initially based on the very good [craftinginterpreters book](http://www.craftinginterpreters.com/contents.html), along with inspiration from [Wren](https://github.com/wren-lang/wren).\n\n\u003cp\u003eThis project is supported by:\u003c/p\u003e\n\u003cp\u003e\n  \u003ca href=\"https://m.do.co/c/02bd923f5cda\"\u003e\n    \u003cimg src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdictu-lang%2FDictu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdictu-lang%2FDictu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdictu-lang%2FDictu/lists"}