<p>The main programming language used to date is still Haskell.</p>
<p>Whether based on the GHC plugin &quot;PlutusTX&quot; by IOG (the first &quot;smart contract language&quot; released for cardano) or based on &quot;Plutarch&quot; (the second one, which is an eDSL in Haskell)</p>
<p>Despite that, new languages such as Aiken, plu-ts, OpShin are gaining momentum.</p>
<p>To determine which one is the one for your dApp it strictly depends on what you are more comfortable with</p>
<p>(eg. if you prefer typescript you'll go with plu-ts; if you prefer python you'll go with OpShin, and so on).</p>
<p>Keep also in mind that most of your dApp will likely be offchain code (transaction creation), and the smart contracts will only be needed to validate those transactions.</p>

CC BY-SA 4.0
2023-06-22T08:40:57.363Z
2023-06-22T08:40:57.363Z
Michele Nuzzi
<p>If you are interested in learning about Cardano I can highly recommend the course at <a href="https://plutuspbl.io" rel="nofollow noreferrer">plutuspbl.io</a> it's a project based learning environment and covers PlutusTX, Aiken etc (and it's free)</p>

CC BY-SA 4.0
2023-06-22T11:54:21.840Z
2023-06-23T06:17:42.813Z
2023-06-23T06:17:42.813Z
Dan Wheatley
<p>I am a newbie to blockchain in the Cardano ecosystem. I have been exploring the Cardano documentation, which mentions various programming languages for writing smart contracts on the platform.</p>
<p>How do I determine the appropriate programming language for my Dapp?</p>
<p>Currently, which programming language is predominantly used for writing smart contracts and has been widely adopted in production on Cardano now?</p>

<smart-contract>
which programming language is predominantly used for writing smart contracts in Cardano now?
# which programming language is predominantly used for writing smart contracts in Cardano now?

(Asked by: username_0 on 2023-06-22)

I am a newbie to blockchain in the Cardano ecosystem. I have been exploring the Cardano documentation, which mentions various programming languages for writing smart contracts on the platform.

How do I determine the appropriate programming language for my Dapp?

Currently, which programming language is predominantly used for writing smart contracts and has been widely adopted in production on Cardano now?

**Tags:** smart-contract

---

## 2 answers

### Answer by username_1 on 2023-06-22. Score: 2

The main programming language used to date is still Haskell.

Whether based on the GHC plugin "PlutusTX" by IOG (the first "smart contract language" released for cardano) or based on "Plutarch" (the second one, which is an eDSL in Haskell)

Despite that, new languages such as Aiken, plu-ts, OpShin are gaining momentum.

To determine which one is the one for your dApp it strictly depends on what you are more comfortable with

(eg. if you prefer typescript you'll go with plu-ts; if you prefer python you'll go with OpShin, and so on).

Keep also in mind that most of your dApp will likely be offchain code (transaction creation), and the smart contracts will only be needed to validate those transactions.


---

### Answer by username_2 on 2023-06-22. Score: 2

If you are interested in learning about Cardano I can highly recommend the course at [plutuspbl.io](https://plutuspbl.io) it's a project based learning environment and covers PlutusTX, Aiken etc (and it's free)


---

