But, if you compare them at a granular level, then you'd find that blockchain programming languages are restricted to bare minimum functionalities.
Following are the reasons:
In ethereum, the concept of gas was introduced to prevent "infinity loop attacks" which is why the cost of running applications becomes very expensive, Also, anything you commit to the ledger be easily modified therefore extra regards has to be taken to get it right on the first try.,
Blockchain programming adds an extra "trust layer" to the OSI model. this is why you need to use an intermediator to communicate with the application layer. Your code can be seen by many others which makes your code vulnerable to malicious activities.