馃嚜馃嚫 Lenguajes de Programaci贸n detr谩s del C贸digo On-Chain de Cardano

En un art铆culo anterior, debatimos el papel especializado del desarrollador on-chain de la blockchain Cardano como responsable de escribir el c贸digo on-chain de una dApp Cardano que se despliega en la blockchain y es ejecutado por los nodos de la red. Para escribir este c贸digo on-chain, los desarrolladores de Cardano pueden utilizar diferentes lenguajes de programaci贸n.

La red Cardano fue hecha para ser vers谩til e inclusiva. Eligi贸 Haskell como lenguaje principal, pero al mismo tiempo, cre贸 las herramientas para abrir la red a cualquier alternativa. El empuje consiste en permitir varias soluciones posibles garantizando al mismo tiempo el mismo nivel de seguridad.

Eso ha creado un ecosistema muy especial para Cardano, uno en el que existen m煤ltiples alternativas para escribir c贸digo en la cadena sin comprometer la seguridad de la blockchain. Esto es pr谩cticamente inaudito en otros protocolos.

Cada uno de estos lenguajes es una alternativa al c贸digo on-chain que no compromete la seguridad de los smart contracts. Como tal, es una cuesti贸n de preferencia cu谩l utilizar y no tanto de propiedades que los hagan mejores unos que otros.

Analicemos a continuaci贸n los diferentes lenguajes de programaci贸n para el c贸digo on-chain de Cardano.

Lenguajes de programaci贸n del c贸digo on-chain de Cardano

Los lenguajes de programaci贸n detr谩s del c贸digo en cadena de Cardano 2

PlutusTx

El primer idioma de la lista es PlutusTx.

Se trata del m茅todo admitido para escribir c贸digo en cadena por el equipo de IOG. Es un lenguaje espec铆fico del dominio que se cre贸 bas谩ndose en Haskell y, como tal, refleja la sintaxis de su lenguaje padre casi 1 a 1.

PlutusTx es el m茅todo principal que est谩 respaldado por las entidades del n煤cleo de Cardano. Por esta raz贸n, cuenta con el mayor apoyo en t茅rminos de base de c贸digo, recursos, documentaci贸n y material educativo en el ecosistema de Cardano. Ya ha recibido una importante revisi贸n tras el hard fork de Vasil (Cardano 101: What is the Vasil Hard Fork and its Major Network Updates?) y la introducci贸n de PlutusV2.

Se espera que este patr贸n contin煤e en el futuro. Los desarrolladores del n煤cleo mejorar谩n las caracter铆sticas de Plutus y otros equipos tendr谩n que ponerse al d铆a con sus cambios. Por eso se recomienda aprender Plutus a todo aquel que quiera introducirse en el desarrollo de Cardano.

Aiken

Aiken is one of the alternatives to PlutusTx for on-chain code.

Aiken toma prestada parte de la sintaxis de Rust y la incorpora en una herramienta amigable para los desarrolladores de Cardano. El equipo detr谩s de Aiken, Txpipe, se ha centrado en crear un compilador f谩cil de usar que utiliza el gestor de paquetes de Rust para ofrecer mensajes de error legibles que pueden ayudar a localizar el problema m谩s r谩pida y f谩cilmente.

Ello ha convertido a Aiken en una alternativa muy popular al PlutusTx original. Existe un pool considerable de desarrolladores que entienden la programaci贸n funcional pero utilizan Rust m谩s que Haskell. Aiken les ha permitido entrar en el ecosistema de Cardano utilizando un lenguaje de su elecci贸n.

Por otro lado, Aiken ofrece algunas ventajas en cuanto al tama帽o de la transacci贸n. Es el tama帽o lo que determina el importe de las tarifas, por lo que cualquier ganancia en ese 谩mbito hace que las transacciones y, por extensi贸n, las dApps sean m谩s baratas de utilizar.

Helios

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

Ha sido creado para embarcar a los desarrolladores web en Cardano. El ecosistema Javascript/Typescript es uno de los m谩s grandes entre los programadores y Helios es una buena opci贸n para estas personas.

隆El kit de herramientas Helios tambi茅n tiene la distinci贸n de funcionar tanto para c贸digo on-chain como off-chain! Los creadores de Helios han desarrollado una versi贸n para cada una de las caras de una dApp de Cardano. As铆, los desarrolladores ya no necesitan utilizar un tipo de lenguaje para on-chain y luego cambiar a otro diferente para off-chain.

Este lenguaje Helios tambi茅n puede utilizarse para calcular y gestionar los activos de Cardano durante una transacci贸n. Esto lo convierte en una de las alternativas m谩s vers谩tiles del ecosistema de Cardano para programadores de todos los 谩mbitos.

Opshin

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

Constituye la principal alternativa para quienes buscan construir en la red y tienen conocimientos de Python. Existe una gran comunidad de analistas de datos que provienen de Python que pueden beneficiarse de esta alternativa.

Es un lenguaje f谩cil de instalar y de empezar a utilizar para quienes est茅n familiarizados con Python. Admite tanto paradigmas imperativos como funcionales sin comprometer el dise帽o central de los smart contracts de Cardano.

Programming-Languages-Behind-Cardano-On-Chain-Code-3

Plu-ts

Plu-ts desarrollado por Harmonic Labs es otra alternativa de Typescript para c贸digo en cadena.

La implementaci贸n del lenguaje tambi茅n ofrece herramientas para escribir c贸digo fuera de la cadena, por lo que permite a los desarrolladores la posibilidad de utilizar la misma sintaxis para ambas partes de la dApp de Cardano.

Adem谩s, Plu-ts pretende dar a los desarrolladores un mayor control sobre el c贸digo compilado. Esto significa que el tama帽o de un smart contract puede optimizarse para hacerlo m谩s barato para el usuario. Esto significa que los desarrolladores de dApp pueden impulsar a煤n m谩s Plu-ts para abaratar el uso de sus plataformas.

Plutarch

Plutarch es otro lenguaje de dominio espec铆fico aunque solo para c贸digo on-chain basado en Haskell. Se considera un lenguaje de bajo nivel. Si comparamos PlutusTx + Haskell para que sea similar a un lenguaje de programaci贸n general como C/C++, entonces Plutarch puede verse como algo parecido al lenguaje ensamblador dentro del ecosistema Cardano.

Su principal objetivo es optimizar el tama帽o de un validador para que las transacciones sean lo m谩s baratas posible. Por el momento, Plutarch es el lenguaje que prueba los validadores m谩s peque帽os para las dApps de Cardano.

Esto ha convertido a Plutarch en la primera opci贸n para las dApps que quieren optimizar al m谩ximo sus tarifas. Es una opci贸n avanzada para desarrolladores que dominen Haskell, ya que se basa m谩s en las caracter铆sticas principales de su lenguaje padre que otras alternativas. Por esta raz贸n, no es muy apto para principiantes, pero sin duda es una opci贸n viable para los veteranos de Haskell.

Ah铆 tenemos una lista casi exhaustiva de todas las diferentes formas de escribir c贸digo en la cadena en Cardano. A excepci贸n de PlutusTx, todos los dem谩s proyectos fueron creados por la comunidad y cuentan con el apoyo de equipos independientes.

Todos ellos comparten las mismas propiedades b谩sicas de seguridad y no comprometen a Cardano en modo alguno. Esto significa que la elecci贸n de cu谩l utilizar proviene de la experiencia de un equipo de desarrolladores. Todas las opciones son 100% viables y cada una est谩 siendo mejorada constantemente por la comunidad Cardano.

Siga a EMURGO para X para obtener informaci贸n sobre Cardano

EMURGO es una compa帽铆a global de tecnolog铆a blockchain que apoya a constructores, organizaciones y otros a adoptar Cardano para productos y servicios Web3.

Para recibir actualizaciones sobre Cardano y EMURGO, siga EMURGO en X (antes Twitter) para obtener detalles sobre los 煤ltimos anuncios, cursos de educaci贸n sobre Cardano, financiaci贸n de proyectos, eventos relacionados con Cardano y mucho m谩s.

Sobre EMURGO

Exoneraci贸n de responsabilidad

  • No debe interpretar esta informaci贸n u otro material como asesoramiento legal, fiscal, de inversi贸n, financiero o de otro tipo. En ning煤n caso el contenido de este documento constituir谩 una solicitud, recomendaci贸n, aprobaci贸n u oferta de inversi贸n por parte de EMURGO.*

Traducci贸n al espa帽ol de 鈥淭he Programming Languages Behind Cardano On-Chain Code鈥, escrito por @EMURGO_io, en noviembre 13 de 2024.


Notas del traductor

  • Corchetes del traductor.
  • :uk: indica que el enlace apunta a un contenido en idioma ingl茅s.
  • :es: indica que el enlace apunta a un contenido en idioma espa帽ol.

Considere suscribirse a las siguientes fuentes de informaci贸n en espa帽ol de Cardano seg煤n su inter茅s.