Subscribe to mmkiml
Subscribe to mmkiml
Share Dialog
Share Dialog
<100 subscribers
<100 subscribers
Gnoland adopts a new language called Gnolang, a fork of the Golang. A clear advantage of Golang compared to other languages is apparent when dealing with concurrency. While a majority of programming languages such as C++ or Java use multithreading for running concurrent programs, Go uses Goroutines.
Multithreading is where multiple threads are run in parallel within a single process. This could be your browser playing music and running a search engine at the same time, or your word processing software displaying your input while checking the grammar. The issue with multithreading is that it requires context switching, where the OS scheduler manages the switching between processes and threads. This often causes overhead and consumes excessive resources. Goroutine, on the other hand, takes the burden off the OS by implementing Go Scheduler, a run-time native scheduler. Creation and destruction of Goroutines consume seemingly less memory (as little as 0.2% of threads) and fully utilizes all cores of the hardware.
Almost all blockchains in existence are single threaded, meaning that processing multiple transactions simultaneously will lead to double-spending or a conflict between states.
Gnoland provides the most viable solution to this, which is integrating goroutines by supporting Golang as the smart contracts language.
The most commonly used languages in the current blockchain development environment are Solidity for EVM-compatible networks and Rust for Solana and Cosmos SDK-based networks; both Solidity and Rust are inspired by C++. Although all of the above are excellent languages, Gnolang inherits faster compiling speed, more concise grammar, and resource-effective concurrency from Golang.
So scalability is important.
Gnoland adopts a new language called Gnolang, a fork of the Golang. A clear advantage of Golang compared to other languages is apparent when dealing with concurrency. While a majority of programming languages such as C++ or Java use multithreading for running concurrent programs, Go uses Goroutines.
Multithreading is where multiple threads are run in parallel within a single process. This could be your browser playing music and running a search engine at the same time, or your word processing software displaying your input while checking the grammar. The issue with multithreading is that it requires context switching, where the OS scheduler manages the switching between processes and threads. This often causes overhead and consumes excessive resources. Goroutine, on the other hand, takes the burden off the OS by implementing Go Scheduler, a run-time native scheduler. Creation and destruction of Goroutines consume seemingly less memory (as little as 0.2% of threads) and fully utilizes all cores of the hardware.
Almost all blockchains in existence are single threaded, meaning that processing multiple transactions simultaneously will lead to double-spending or a conflict between states.
Gnoland provides the most viable solution to this, which is integrating goroutines by supporting Golang as the smart contracts language.
The most commonly used languages in the current blockchain development environment are Solidity for EVM-compatible networks and Rust for Solana and Cosmos SDK-based networks; both Solidity and Rust are inspired by C++. Although all of the above are excellent languages, Gnolang inherits faster compiling speed, more concise grammar, and resource-effective concurrency from Golang.
So scalability is important.
No activity yet