Технологія блокчейну докорінно змінила наше уявлення про дані та транзакції. Однак, блокчейн може володіти лише двома з трьох основних характеристик, які мають вирішальне значення для його успіху: децентралізація, безпека та масштабованість. Наприклад, надання пріоритету безпеці та децентралізації зазвичай призводить до зниження масштабованості. Ethereum, будучи безпечним і децентралізованим, потребував вирішення проблем з масштабуванням. Як рішення, з'явилися блокчейни другого рівня, такі як технологія масштабування "rollup", щоб спростити складні транзакції та зменшити перевантаженість мережі Ethereum.
Однією з найбільш популярних технологій масштабування 2-го рівня для екосистеми Ethereum є Fuel Network. Fuel Network - це оптимістичний роллап, розроблений Fuel Labs, версія Fuel V1 якого була опублікована наприкінці 2020 року. Його мета - перетворити перший рівень монолітної структури Ethereum на модульний рівень виконання, який забезпечує підвищений контроль і гнучкість, що дозволяє масштабувати і оптимізувати продуктивність.
Fuel працює на модульній структурі, що робить його найшвидшим модульним виконавчим рівнем з паралельною моделлю виконання. Він має власну віртуальну машину під назвою FuelVM, натхненну EVM, Solana, WASM, Bitcoin і Cosmos; і використовує мову програмування на основі Rust під назвою Sway для розробки смарт-контрактів.
Fuel пропонує численні інструменти для розробки, серед яких три найвідоміші - Sway Language, Rust SDK та TypeScript SDK. Sway використовується для розробки смарт-контрактів, Rust SDK - для компіляції, публікації та тестування контрактів, написаних за допомогою Sway, а TypeScript SDK дозволяє взаємодіяти з контрактами, перераховувати транзакції та баланси.
Існує чотири різних типи програм, створених за допомогою Sway: контракти, предикати, скрипти та бібліотеки. Контракт - це програма, що складається з байт-коду, який розгортається в блокчейні, в той час як предикат повертає логічне значення без доступу до даних контракту. Сценарій - це байт-код, який виконує завдання в ланцюжку, а бібліотеки дозволяють запускати програми з загальною функціональністю.
Хоча байт-код, створений на мовах програмування високого рівня, може бути складним для розуміння людиною, він компілюється і перетворюється в машинний код, який є мовою, зрозумілою комп'ютеру. Контракти, на відміну від скриптів і предикатів, можуть бути викликані повторно і містять стан, що робить їх схожими на розгорнутий API з базою даних.
У висновку, Fuel Network зробила революцію в технології блокчейн, запропонувавши оптимістичне розгортання, яке ставить на перше місце її масштабованість. Її модульна структура і FuelVM виділяють її серед технологій масштабування Ethereum. Мова Sway Language, Rust SDK та TypeScript SDK пропонують численні інструменти для розробки. Контракти, скрипти, предикати та бібліотеки - це чотири різних типи програм, створених за допомогою Sway, які генерують байт-код, що може по-різному інтерпретуватися комп'ютерами з різною архітектурою