- Created by Sean W. Bohan, last modified on Sep 11, 2022
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 9 Next »
Project | TBD LOGO |
Status | |
CII Badge | |
Description | Solang is a portable compiler for the Solidity language that targets Solana, Substrate (Polkadot), and ewasm. It is written in Rust, and leverages the LLVM infrastructure for the compiler backend. |
The Solidity language is the [most popular programming language for smart contracts](https://101blockchains.com/smart-contract-programming-languages/). However, the existing Solidity compiler only targets the Ethereum virtual machine. The Solang project aims to make Solidity available for other blockchains, and focuses on maintaining compatibility with Solc, so that developers can use their existing codebase for blockchains other than Ethereum with minimal modifications.
The purpose of Solang is two-fold: first of all, developers with solidity language knowledge can develop new smart contracts for non-ethereum blockchains in Solidity, so they do not have to learn a new language. Secondly, there is a large amount of existing Solidity contracts available, which can be recompiled for a different blockchain.
Currently, Solang targets the following blockchains:
- [Solana](https://solana.com)
- [Substrate Polkadot](https://substrate.io)
- [Ethereum ewasm](https://ewasm.readthedocs.io)
At the time of writing, these chains are the 2nd, 9th, and 11th by market capitalization according [coinmarketcap](https://coinmarketcap.com/) (the coins are listed by market cap).
Note that public Ethereum does not currently support ewasm, however work for ewasm support on Ethereum is underway.
Any other blockchain that wishes to have Solidity language support is welcome to a new target to the Solang project. The cosmos blockchain [grant foundation](https://interchain.io/) has said it would [support a grant for adding CosmWasm support](https://github.com/hyperledger-labs/Solang/issues/582).
The goal of Solang is to bring the Solidity language to as many blockchains as possible. Writing a production quality compiler is a complex task, so collaboration between blockchains will be hugely beneficial.
The success of the project can be measured by the number of projects that use Solang as a compiler.
Key Characteristics (please add bullets here)
Documentation
https://Solang.readthedocs.io/en/latest/
How to run Solang on command line: https://Solang.readthedocs.io/en/latest/running.html
Blockchain-specific instructions for:
Solana: https://solang.readthedocs.io/en/latest/targets/solana.html
Substrate: https://solang.readthedocs.io/en/latest/targets/substrate.html
Burrow: https://solang.readthedocs.io/en/latest/targets/burrow.html
Project Management and Issue Tracking
All Solang projects use GitHub for receiving issues, receiving pull requests and tracking releases. The links to the GitHub repos for the project are below.
Repositories
https://github.com/hyperledger/solang
https://github.com/hyperledger/homebrew-solang
Communication
Mailing List
Chat (for questions and ephemeral discussions)
Questions are welcome and best asked in Hyperledger Discord.
Learn more about Hyperledger Discord here, get the invite and check out one of the many Aries project channels.
Meeting
People who want to learn about or contribute to Solang should join this call. This does not replace our asynchronous collaboration, but should help us keep everyone up-to-date and moving together.
Discussion items: upcoming releases, current PRs, work that will generate future PRs, architecture changes that will impact downstream teams, project standards, best practices, design, etc.
For call details and agendas, see: <NEEDS AGENDA PAGE>
Calendar
History
Getting Involved
You are invited to get involved with the Cactus project. Here are some ways you can get started.
- Join our team calls
- <details>
- Instructions on working with Solang(the framework itself)
- Join communication channels and introduce yourself and ask questions (details below)
- Grab a good first issue based on your level of experience/technical area(s) of expertise or interests:
Communication
Mailing List
Chat (for questions and ephemeral discussions)
Questions are welcome and best asked in Hyperledger Discord. Learn more about Hyperledger Discord here, get the invite and check out one of the many Cactus project channels.
Meetings <needs update>
Recent space activity
Space contributors
- No labels