-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #5 from hien-p/main
Add Move Language
- Loading branch information
Showing
19 changed files
with
275 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 3 additions & 1 deletion
4
src/data/roadmaps/algorand/content/smart-contract-application.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
# Smart contract aka Apps | ||
|
||
The application Transaction communicate with Application Transactions | ||
The application Transaction communicate with Application Transactions. | ||
|
||
|
4 changes: 4 additions & 0 deletions
4
src/data/roadmaps/move/content/aptos-move-powered-blockchain.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Aptos | ||
|
||
Aptos labs strives towards being the safest and most scalable layer one blockchain solution | ||
|
7 changes: 7 additions & 0 deletions
7
src/data/roadmaps/move/content/comparison-EVM-Solana-movevm.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# Comparison Between EVM, Solana Runtime, MoveVM | ||
|
||
|
||
|
||
# resources: | ||
|
||
https://medium.com/@bucketprotocol/a-deep-dive-into-the-pros-and-cons-of-evm-solana-and-move-blockchains-879a4d942ee4 |
9 changes: 9 additions & 0 deletions
9
src/data/roadmaps/move/content/mango-move-powered-blockchain.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# What is Mango ? | ||
Mango Network is a Layer1 blockchain, written in rust, based on the Dpos consensus mechanism and supported by Move, to build a transaction-based omni-chain infrastructure network | ||
|
||
|
||
![image](https://mangonet.io/img/img27.png) | ||
|
||
# Resources: | ||
- [@official@Mango Network Introduce](https://github.com/MangoNet-Labs/mango) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# What is Modules | ||
Modules are libraries that define struct types along with functions that operate on these type | ||
|
||
A module has the following syntax: | ||
``` | ||
module <address>::<identifier> { | ||
(<use> | <friend> | <type> | <function> | <constant>)* | ||
} | ||
``` | ||
|
||
where address is a [valid literal address](https://move-language.github.io/move/address.html) | ||
|
||
# Resources | ||
- [@article@ What is Modules? ](https://move-language.github.io/move/modules-and-scripts.html#modules-and-scripts) |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# What is Move source file | ||
A Move source file (or compilation unit) may contain multiple modules and scripts | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# What is Move VM? | ||
Move VM is developed by Libra, a blockchain platform by Facebook. The main difference from other existing virtual machines, like EVM, it's: | ||
|
||
* Support of Move language - resource oriented-language developed for Move VM. | ||
|
||
* Move VM is resource-oriented: developer can define a resource, place resource under an account and move resources between accounts. But resource can be never duplicated, reused or discarded. | ||
|
||
* Bytecode verification. To be executable code must be verifiable | ||
|
||
This document describes how Move VM works | ||
|
||
|
||
All this makes Move VM much safer than other blockchains VMs. For example, the famous DAO hack just couldn't happen, because of the resource model and bytecode verification. | ||
|
||
# Resources | ||
- [@official@Move VM Specification](https://github.com/move-language/move/blob/main/language/documentation/spec/vm.md) |
14 changes: 14 additions & 0 deletions
14
src/data/roadmaps/move/content/movement-move-powered-blockchain.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# What is the Movement Network? | ||
|
||
Movement Labs is building a network of Move-based blockchains. | ||
|
||
It will support Aptos Move, Sui Move, and also our embedded EVM interpreter MEVM—empowering both Sui, Aptos, and EVM users to use the L2. | ||
|
||
|
||
# Resources | ||
- [@official@Movement Docs](https://docs.movementnetwork.xyz/) | ||
- [@official@Movement Learning Resources](https://docs.movementlabs.xyz/ecosystem/learn/learning-resources) | ||
- [@official@Building with Movement](https://hack.movementlabs.xyz) | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
|
||
# The origin of move language | ||
|
||
Facebook started a project called The Diem Association to build a digital payments platform using blockchain technology. They created a programming language called Move for this payment system to make it very flexible and powerful. | ||
|
||
The Diem Association is committed to compliance, consumer protection, and fostering an open and competitive network. They also provide resources for developers to build on the Diem Blockchain. |
19 changes: 19 additions & 0 deletions
19
src/data/roadmaps/move/content/similarities-between-rust-and-move.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Similarities Between Rust and Move | ||
|
||
## Memory Safety | ||
Both Rust and Move prioritize memory safety. | ||
|
||
* Rust achieves this through its ownership model and borrowing rules, preventing data races and null pointer dereferencing. | ||
|
||
* Move, while not dealing with memory management directly, ensures safety by treating resources as first-class citizens that must be explicitly created, transferred, and destroyed. | ||
|
||
|
||
## Modular Design | ||
* Rust's module system allows for the organization and reuse of code, making it easier to manage complex projects. | ||
|
||
* Similarly, Move's modular design encourages the creation of reusable and composable modules, enabling developers to build complex smart contracts from simpler components. | ||
|
||
# Resources: | ||
|
||
- [@article@From rust to move](https://nadev.hashnode.dev/from-rust-to-move-a-guide-for-rust-developers-transitioning-to-move#heading-similarities-between-rust-and-move) | ||
|
5 changes: 5 additions & 0 deletions
5
src/data/roadmaps/move/content/sui-move-powered-blockchain.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Sui by Mysten Labs | ||
A next-generation smart contract platform with high throughput, low latency, and an asset-oriented programming model | ||
|
||
# Reference: | ||
- [@official@Sui](https://x.com/Mysten_Labs) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
|
||
# History | ||
Origins Diem started in 2017 when Morgan Beller joined Facebook's secret blockchain project. | ||
|
||
In January 2018, Facebook CEO Mark Zuckerberg shared a New Year's resolution post about wanting to learn more about cryptocurrencies. | ||
|
||
On May 8, 2018, Facebook Vice President David Marcus announced he would lead Facebook's blockchain project instead of the Messenger division. | ||
|
||
|
||
# **Libra Project Announcement** | ||
|
||
On June 18, 2019, Facebook [announced](https://libra.org/en-US/updates/introducing-libra/) a new payment system called Libra. It uses blockchain technology to move money at low cost. The Libra token is a stablecoin backed by various currencies and government securities, known as the Libra Reserve. This reserve would be held by custodian banks around the world and managed by exchanges that convert it to local currencies. | ||
|
||
Facebook planned to create a digital wallet for Libra under a new subsidiary called [Calibra](https://messari.io/organization/calibra) (now called Novi), led by Morgan Beller, David Marcus, and Kevin Weil. The project would start as permissioned, but the goal was to make it permissionless within five years. | ||
|
||
# Resources: | ||
- [@article@Diem project](https://messari.io/project/diem/profile) |
16 changes: 16 additions & 0 deletions
16
src/data/roadmaps/move/content/the-differences-between-rust-and-move.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Key Differences Between Rust and Move | ||
|
||
## Resource-Oriented Programming | ||
|
||
The difference between Rust and Move is the resource-oriented programming. | ||
|
||
In Move, resources represent assets that cannot be duplicated or discarded. This is crucial for managing digital assets on the blockchain, ensuring their integrity and security. | ||
|
||
## Execution Model | ||
Rust is a general-purpose programming language designed for a wide range of applications, from system programming to web development. | ||
|
||
Move, on the other hand, is specifically designed for writing smart contracts. Move's execution model is built around transactions and scripts, allowing for secure and flexible interactions with the blockchain. | ||
|
||
- [@article@Key Differences Between Rust and Move](https://nadev.hashnode.dev/from-rust-to-move-a-guide-for-rust-developers-transitioning-to-move#heading-key-differences-between-rust-and-move) | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
# What is Move? | ||
Move is designed to be a platform-agnostic language to enable common libraries, tooling, and developer communities | ||
|
||
|
||
> Move's ambition is to become the "JavaScript of web3" | ||
|
||
# Visit the following resources to learn more: | ||
|
||
- [@article@Move-awesome](https://github.com/MystenLabs/awesome-move/tree/main) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Why Move? | ||
|
||
Move was created to address the specific needs of blockchain development, focusing on safety, flexibility, and resource management. | ||
|
||
Unlike general-purpose languages, Move introduces the concept of resources that represent assets, ensuring they cannot be duplicated or discarded unintentionally. This resource-oriented programming model is designed to prevent common vulnerabilities and ensure the integrity of digital assets. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
[ | ||
{ | ||
"phase_id": "1", | ||
"phase_name": "Move roadmap", | ||
"topics": [ | ||
{ | ||
"topic_id": "what-is-move", | ||
"topic_name": "What is Move?", | ||
"subtopics": [ | ||
{ | ||
"subtopic_id": "why-move", | ||
"subtopic_name": "Why move?" | ||
}, | ||
{ | ||
"subtopic_id": "similarities-between-rust-and-move", | ||
"subtopic_name": "Similarities Between Rust and Move" | ||
}, | ||
{ | ||
"subtopic_id": "the-differences-between-rust-and-move", | ||
"subtopic_name": "The Differences Between Rust and Move" | ||
} | ||
] | ||
}, | ||
{ | ||
"topic_id": "origins-of-move-language", | ||
"topic_name": "Origins of Move Language", | ||
"subtopics": [ | ||
{ | ||
"subtopic_id": "the-diem asscociation", | ||
"subtopic_name": "The Diem Asscociation" | ||
} | ||
] | ||
} | ||
, | ||
{ | ||
"topic_id": "move-powered-blockchains", | ||
"topic_name": "Move-Powered Blockchains", | ||
"subtopics": [ | ||
{ | ||
"subtopic_id": "sui-move-powered-blockchain", | ||
"subtopic_name": "Sui Blockchain" | ||
}, | ||
{ | ||
"subtopic_id": "aptos-move-powered-blockchain", | ||
"subtopic_name": "Aptos Blockchain" | ||
}, | ||
{ | ||
"subtopic_id": "movement-move-powered-blockchain", | ||
"subtopic_name": "Movement Blockchain" | ||
}, | ||
{ | ||
"subtopic_id": "mango-move-powered-blockchain", | ||
"subtopic_name": "Mango Network" | ||
} | ||
] | ||
}, | ||
{ | ||
"topic_id": "move-virtual-machine", | ||
"topic_name": "Move Virtual Machine (VM)", | ||
"subtopics": [ | ||
{ | ||
"subtopic_id": "subsequent-blocks-of-transactions", | ||
"subtopic_name": "The subsequent blocks of transactions" | ||
}, | ||
{ | ||
"subtopic_id": "move-bytecode-verifier", | ||
"subtopic_name": "Move bytecode verifier" | ||
}, | ||
{ | ||
"subtopic_id": " move-intermediate-representation-compiler", | ||
"subtopic_name": " Move intermediate representation (IR) compiler" | ||
}, | ||
{ | ||
"subtopic_id": "comparison-EVM-Solana-movevm", | ||
"subtopic_name": "Comparison Between EVM, Solana Runtime, MoveVM" | ||
} | ||
] | ||
} | ||
] | ||
}, | ||
{ | ||
"phase_id": "2", | ||
"phase_name": "Move Basics", | ||
"topics": [ | ||
{ | ||
"topic_id": "modules-and-scripts", | ||
"topic_name": "Modules and Scripts", | ||
"subtopics": [ | ||
{ | ||
"subtopic_id": "modules", | ||
"subtopic_name": "Modules" | ||
}, | ||
{ | ||
"subtopic_id": "scripts", | ||
"subtopic_name": "Scripts" | ||
}, | ||
{ | ||
"subtopic_id": "move-source-file", | ||
"subtopic_name": "Move source file" | ||
} | ||
] | ||
} | ||
] | ||
} | ||
] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- | ||
title: "Move Language Roadmap" | ||
briefTitle: "Move" | ||
description: "Move is a programming language for writing safe smart contracts originally developed at Facebook to power the Libra blockchain." | ||
tags: ["skill-based"] | ||
order: 5 | ||
isHidden: false | ||
github: "https://github.com/move-language" | ||
documentationLink: "https://www.openedu101.com/en/bootcamps/sui-on-move-bootcamp-2024--become-a-smart-contract-developer-from-scratch" | ||
--- |