{"id":23692412,"url":"https://github.com/cristian-5/spin","last_synced_at":"2026-01-17T07:30:17.980Z","repository":{"id":135618181,"uuid":"180622535","full_name":"cristian-5/Spin","owner":"cristian-5","description":"Spin Programming Language","archived":false,"fork":false,"pushed_at":"2022-09-28T17:04:55.000Z","size":2189,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-30T03:27:49.077Z","etag":null,"topics":["compiler","language","quantum-computing","quantum-programming-language","research"],"latest_commit_sha":null,"homepage":"https://cristian-a.github.io/Spin/Index.html","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/cristian-5.png","metadata":{"files":{"readme":"ReadMe.md","changelog":null,"contributing":null,"funding":".GitHub/FUNDING.yml","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},"funding":{"custom":["https://paypal.me/CristianAntonuccio"]}},"created_at":"2019-04-10T16:35:54.000Z","updated_at":"2023-08-01T16:15:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"a1bd17b2-259b-4cc2-9c9e-66b4f9ee6cbb","html_url":"https://github.com/cristian-5/Spin","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/cristian-5%2FSpin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristian-5%2FSpin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristian-5%2FSpin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristian-5%2FSpin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cristian-5","download_url":"https://codeload.github.com/cristian-5/Spin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239758830,"owners_count":19692033,"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":["compiler","language","quantum-computing","quantum-programming-language","research"],"created_at":"2024-12-30T03:27:35.494Z","updated_at":"2025-02-20T00:43:26.087Z","avatar_url":"https://github.com/cristian-5.png","language":"C++","funding_links":["https://paypal.me/CristianAntonuccio"],"categories":[],"sub_categories":[],"readme":"\n# Spin - Programming Language\n\n[![license](Resources/Badges/License.svg)](License)\n[![version](Resources/Badges/Version.svg)](ReadMe.md)\n[![language](Resources/Badges/Language.svg)](ReadMe.md)\n[![contributions](Resources/Badges/Contributions.svg)](ReadMe.md)\n[![donations](Resources/Badges/Donations.svg)](https://paypal.me/CristianAntonuccio)\n\n\u003cdiv align=\"center\"\u003e\n\t\u003cimg src=\"Resources/Icons/Spin.png\" height=\"200\" width=\"200\"\u003e\n\u003c/div\u003e\n\nHigh level programming language for *research* in\n**Quantum Computing** built in *c++*.\n\nWe aim to create a powerful language.\n\nThe **Virtual Machine** is ready but the quantum part\nof the language is not ready yet;\\\nDirac notation has been implemented in the lexer and\npreprocessor, but the **VM** doesn't support it yet.\n\nI'm speeding up the development process since this\nwill be my thesis.\n\n## A taste of spin\n\nThese snippets are here to give you a little background\nbut if you feel lost when it comes to control flow of the\nprogram, just remember that statements work just like in *c++*.\n\n### Numeric Types\n\n![Snippet 1](Examples/S1.svg)\n\n### Minor Types\n\n![Snippet 2](Examples/S2.svg)\n\nThe documentation that contains the language syntax\nspecification is currently under construction.\n\n## Code Contribution\n\n**Attention!** This project is currently under development and\nwe only completed 70% of the total tasks. We are now working on\nthe *Quantum System*.\n\n**New Contributors are WELCOME**, so if you're a skilled dev\nfeel free to contact me for joining our team.\n\nIf you want to contribute you must follow these \n[Conventions](Conventions/) in order to keep the\nfile structure organised and the code clean.\n\n## Usage / Help\n\n```\n% Spin help magician (it's helpful) %\nUsage:\n    spin \u003cfile\u003e\n         Compiles and executes a file.\n    spin [-compile, -c] \u003cfile.spin\u003e \u003cfile.sexy\u003e\n         Compiles a file into a binary.\n    spin [-decompile, -d] \u003cfile.sexy\u003e\n         Decompiles a binary file.\n    spin [-version, -v]\n         Shows the version number.\n    .... [-noAnsi, -n]\n         Disable ansi output.\n  \u003cfile\u003e: should be the main file and\n          it should end with '.spin' or\n          '.sexy' if it's a binary file.\n  \u003cfile.spin\u003e: should be the source file.\n  \u003cfile.sexy\u003e:  should be the binary file.\nI told you it was helpful!\n```\n\n## Donations\n\n**Donations** are *welcome*! Offer me a *cup of coffee* since\nI drink it *every day* just before working on this project.\n\n[![donations](Resources/Badges/PayPal.svg)](https://paypal.me/CristianAntonuccio)\n\n## Compilation\n\nThis code is written in **c++2a** so don't try to build\nit using an *older version*.\n\nThe **VM** must be compiled using *clang++* and *ninja*.\nWe don't cover support for *gcc* / *g++* and we don't make\nsure that our source will be successfully compiled with them.\n\nWe recommend using *clang++* on **macOS** and **Linux**.\n\nThe recommended version of *clang++* (**LLVM**) is 9.0.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcristian-5%2Fspin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcristian-5%2Fspin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcristian-5%2Fspin/lists"}