Blockchain and Smart Contract

Why there are different programming languages used for blockchain? :neutral_face:

1 Like

programming languages are pretty versatile, a lot or the existing languages have been used for blockchain

my question would be why not?

Hey @BlackCyber!
Welcome to the Forum !

1 Like

Hey! Can you give a definite answer to this? I really need some explaining for my homework. :slight_smile:

have you tried with googling your answer?

I have never researched blockchain in detail

Hi @BlackCyber!

I agree with @ilenia’s suggestion with googling the answer.

I would google what is the best programming language for blockchain.
I would look up quora discussions and reddit programming discussions to find the answer you are looking for like this one.


Do you mean “why can you use different programming languages for blockchain”?

Edit: if you do mean that then you’re not really asking anything specific – it’s like asking “why can you write programs in different programming languages”. Or maybe by analogy “why are some buildings made out of different materials to other buildings” or “why are some walls painted colours other than blue”.

Blockchains and smart contracts are just ideas designed to solve very specific problems when dealing with distributed systems (ie the system is programmed to work across multiple computers at once rather than running on one computer, as if you are treating all the computers as a single system).

They basically say “when you want to program a ledger that is trustworthy and works across any number of discrete computers at once, use this protocol, and use these data structures, and implement these algorithms”.

For blockchains, that’s a solution to a requirement that the ledger isn’t centralised in one database (I am extremely familiar with this because I use git almost every day to do development work). Smart contracts I have no idea. But neither mandates a programming language, that’s not the point, it’s not really relevant. There are programming languages designed to make it easier to program that way, but they’re implementation details.


This has been very helpful! Thanks!