The Programming Languages Behind Cardano On-Chain Code - EMURGO (2024)

PlutusTx

One way to write smart contracts on the list is PlutusTx, which is a compiler plugin for the Glasgow Haskell Compiler (the mainstream Haskell compiler), with the main language being in Haskell.

It’s the supported method to write on-chain code by the team at IOG. It’s a domain-specific language that was created based on Haskell and as such mirrors the syntax of its parent language almost 1-to-1.

PlutusTx is the main method that is backed by the team at IOG and support from the other founding entities. It has ample support in some areas, but also lacks comprehensive documentation and resources in the Cardano ecosystem compared to other alternatives such as Aiken. It has already received a major overhaul after the Vasil hard fork and the introduction of PlutusV2.

In the future, this pattern is expected to continue. The core developers will improve the features of Plutus and other teams will have to catch up with their changes. This is why it’s recommended to learn Plutus for everyone looking to enter Cardano development.

Aiken

Aiken is one of the alternatives to PlutusTx.

Aiken is inspired by some of the most familiar languages for developers and has quickly evolved into a friendly tool for Cardano developers.

It was made in response to a need for a functional programming language in Cardano and enables developers to build dApps quickly and easily.

Born from TxPipe and with support from the Cardano Foundation, Aiken has been adopted by the community as a popular smart contract language.

It is a very popular alternative to the original PlutusTx with its clear documentation, end-to-end examples, and vibrant community. There is a sizable pool of developers who understand functional programming with a background in TypeScript, Python, Java, and Go, which can quickly onboard to the Aiken way of doing things. Aiken has allowed them to enter the Cardano ecosystem using a language that uses some familiar concepts for them.

Additionally, Aiken provides some gains on execution units which directly correlate to the number of steps and memory that a contract can do on-chain. There are fewer steps to finish an instruction in Aiken which makes for more efficient validators. It’s the size that determines the fee amount, so any gains on that area make transactions and therefore by extension dApps cheaper to use.

Helios

The Helios language is a Javascript/Typescript SDK alternative for on-chain code on Cardano.

It was created to onboard web developers onto Cardano. The Javascript/Typescript ecosystem is among the largest among programmers and Helios is a good option for these people.

The Helios toolkit also has the distinction of working for both on-chain and off-chain code! The creators of Helios have developed a version for each of the sides of a Cardano dApp. So, developers no longer need to use one type of language for on-chain and then switch to a different one for off-chain.

The Helios language can also be used to calculate and manage Cardano assets during a transaction. This makes it one of the most versatile alternatives in the Cardano ecosystem for programmers of all backgrounds.

Opshin

Opshin is a language that uses 100% valid Python code for on-chain logic on Cardano.

It’s the main alternative for those looking to build on the network that have a background in Python. There is a large community of data analysts that come from Python that can benefit from this alternative.

The language is easy to install and start to use for those familiar with Python. It supports both imperative and functional paradigms without compromising the core design of Cardano smart contracts.

Plu-ts

Plu-ts developed by Harmonic Labs is another Typescript alternative for on-chain code.

The implementation of the language also provides tools to write off-chain code, so it allows developers the ability to use the same syntax for both portions of the Cardano dApp.

Additionally, Plu-ts aims to give developers more control over the compiled code. This means the size of a smart contract can be optimized to make it cheaper for the user. This means dApp developers can further push Plu-ts to make their platforms cheaper to use.

Plutarch

Plutarch is another domain-specific language albeit only for on-chain code based on Haskell. It is considered a higher level of abstraction when related to Haskell, which gives developers ways to write highly efficient smart contracts. But these are harder to reason about due to the level of abstraction in Plutarch.

The main objective of it is to optimize the size of a validator to make transactions as cheap as possible. At the moment, Plutarch is the language that proves the smallest validators for Cardano dApps.

This has made Plutarch the first choice for dApps that want to optimize their fees as much as possible. It’s an advanced option for developers proficient with Haskell, as it relies more on the core features of its parent language than other alternatives. For this reason, it’s not very beginner-friendly, but certainly a viable choice for Haskell veterans.

There we have an almost comprehensive list of all the different ways to write on-chain code on Cardano. Except for PlutusTx, all the other projects were created by the community and are supported by independent teams.

All of them share the same core security properties and don’t compromise Cardano in any way. This means that the choice of which one to use comes from the experience of a developer team. All of the choices are 100% viable and each is being improved constantly by the Cardano community.

The Programming Languages Behind Cardano On-Chain Code - EMURGO (2024)

FAQs

The Programming Languages Behind Cardano On-Chain Code - EMURGO? ›

Aiken is a modern smart contract programming language for the Cardano blockchain. It enables developers to write on-chain code and build dApps (decentralized applications) to deploy on Cardano faster and easier compared to other languages.

What programming language is Cardano built on? ›

The Cardano network was made to be versatile and inclusive. It chose Haskell as its core language, but at the same time, it created the tools to open the network for any alternative.

What program does Cardano use? ›

Cardano (blockchain platform)
Denominations
Written inHaskell
Operating systemCross-platform
Developer(s)Cardano Foundation, IOHK, EMURGO
Source modelFree and open-source software
26 more rows

What is Plutus Cardano programming language? ›

Plutus is a domain-specific language created to write on-chain code for Cardano. As we discussed previously, a dApp on Cardano is divided between on and off-chain code, the former also called a validator. The main language to write the on-chain portion of a smart contract is Plutus.

What language is Cardano dApp? ›

Aiken is quickly becoming the go-to programming language for developers to build Cardano dApps. It's being used in the smart contracts of many of the most used dApps in Cardano including: Minswap – Cardano's most popular DEX or decentralized exchange reinvented its code base using Aiken for its V2 release.

What language is Ada coded in? ›

Ada is an ALGOL-like programming language featuring control structures with reserved words such as if, then, else, while, for, and so on.

Does Cardano use Python? ›

Introduction​ opshin is a programming language for developing smart contracts on the Cardano blockchain. Its syntax is 100% valid Python code and it ensures that contracts evaluate on-chain exactly as their Python counterpart.

What network is Cardano built on? ›

Cardano aims to be a decentralized application (dApp) development platform with a multi-asset ledger and verifiable smart contracts. Cardano runs on the proof-of-stake Ouroboros consensus protocol using its native token, Ada.

What runs on Cardano blockchain? ›

The ADA token runs on the Cardano blockchain, a first-of-its-kind decentralized network based entirely on scientific and mathematical principles and designed by experts in cryptography and engineering. The Cardano blockchain can be used to build smart contracts and, in turn, decentralized applications and protocols.

Is there a future for Cardano? ›

The recent surge in Cardano's price, from approximately $0.25 in October 2023 to $0.64 as of March 21, 2024, illustrates a robust upward trend. This performance mirrors the general optimism seen across the cryptocurrency market, largely attributed to the approval of 11 spot bitcoin ETFs for trade in the US.

What is Cardano code? ›

The cardano open source code is written using Haskell, a universally recognized and secure programming language. Cardano works on a specially designed proof-of-stake (PoS) blockchain protocol for consensus called Ouroboros.

What language is Solana chain written in? ›

Solana programs are typically written in the Rust language, but C/C++ are also supported. There are also various community driven efforts to enable writing on-chain programs using other languages, including: Python via Seahorse (that acts as a wrapper the Rust based Anchor framework)

Is Ada similar to Python? ›

In summary, Ada and Python differ in their syntax, typing, concurrency support, safety features, runtime performance, and ecosystem. Ada emphasizes safety, compile-time checks, and performance, while Python focuses on simplicity, readability, and a vast community and library support.

What is Cardano coded in? ›

Smart contracts on Cardano are written in Plutus, a smart contract language built on Haskell. Plutus provides a higher level of certainty and security compared to other smart contract languages. The use of Haskell and the peer review process ensures that the smart contracts are safe, well-tested, and reliable.

What language is spoken in ADA? ›

Adangme is spoken in Ghana by over 800,000 people as of 2004. It is the aboriginal language spoken in Ghana, Togo, and Benin by the people of Ada, Osudoku, Manya Krobo, Yilo Krobo, Shai, Ningo, Prampram and Kpone. Adangme is partly mutually intelligible with Ga, and, to a lesser extent, Ewe.

What is the name of Cardano native token? ›

Is ADA a Native Token? Yes. ADA is the original token for the Cardano blockchain, which was one of the first blockchains to use proof-of-stake.

What is Cardano built on? ›

Cardano aims to be a decentralized application (dApp) development platform with a multi-asset ledger and verifiable smart contracts. Cardano runs on the proof-of-stake Ouroboros consensus protocol using its native token, Ada.

Is the Ada programming language still used? ›

Today Ada is widely used around the globe, for developing critical systems in both government and commercial domains and for teaching and research in university computer science programs.

Is Ada similar to Java? ›

Ada and Java have more similarities than differences. Both the Ada language and the Java language were designed with safety in mind (both support strong typing, omit pointers, and perform many compile-time and run-time checks).

Top Articles
How to get a Fortress Store Room Key in Sea of Thieves - Rare Thief
Authentic Assessment: Definition + [Examples & Types ]
Oldgamesshelf
Www.fresno.courts.ca.gov
Lifewitceee
Comforting Nectar Bee Swarm
Craigslist Portales
Truist Park Section 135
San Diego Terminal 2 Parking Promo Code
Holly Ranch Aussie Farm
Trade Chart Dave Richard
Flights to Miami (MIA)
Progressbook Brunswick
Uvalde Topic
Brenna Percy Reddit
Raid Guides - Hardstuck
Oxford House Peoria Il
Slope Unblocked Minecraft Game
Reddit Wisconsin Badgers Leaked
735 Reeds Avenue 737 & 739 Reeds Ave., Red Bluff, CA 96080 - MLS# 20240686 | CENTURY 21
Jesus Calling Oct 27
7543460065
Roll Out Gutter Extensions Lowe's
Craigslist Lakeville Ma
Violent Night Showtimes Near Amc Dine-In Menlo Park 12
Kirk Franklin Mother Debra Jones Age
JVID Rina sauce set1
Craftybase Coupon
Hwy 57 Nursery Michie Tn
Infinite Campus Asd20
Amazing Lash Bay Colony
ATM, 3813 N Woodlawn Blvd, Wichita, KS 67220, US - MapQuest
Nurtsug
Everything You Need to Know About Ñ in Spanish | FluentU Spanish Blog
James Ingram | Biography, Songs, Hits, & Cause of Death
Home Auctions - Real Estate Auctions
What Happened To Father Anthony Mary Ewtn
Old Peterbilt For Sale Craigslist
Orangetheory Northville Michigan
Viewfinder Mangabuddy
Publictributes
Kornerstone Funeral Tulia
Vons Credit Union Routing Number
Birmingham City Schools Clever Login
Nina Flowers
Unlock The Secrets Of "Skip The Game" Greensboro North Carolina
Brown launches digital hub to expand community, career exploration for students, alumni
Oklahoma City Farm & Garden Craigslist
Colin Donnell Lpsg
Identogo Manahawkin
Craigslist Pet Phoenix
Provincial Freeman (Toronto and Chatham, ON: Mary Ann Shadd Cary (October 9, 1823 – June 5, 1893)), November 3, 1855, p. 1
Latest Posts
Article information

Author: Rev. Porsche Oberbrunner

Last Updated:

Views: 6063

Rating: 4.2 / 5 (53 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Rev. Porsche Oberbrunner

Birthday: 1994-06-25

Address: Suite 153 582 Lubowitz Walks, Port Alfredoborough, IN 72879-2838

Phone: +128413562823324

Job: IT Strategist

Hobby: Video gaming, Basketball, Web surfing, Book restoration, Jogging, Shooting, Fishing

Introduction: My name is Rev. Porsche Oberbrunner, I am a zany, graceful, talented, witty, determined, shiny, enchanting person who loves writing and wants to share my knowledge and understanding with you.