Tips

  • Se ha anunciado un nuevo lenguaje de contratos inteligentes Ethereum llamado Fe.
  • Usando Vyper como base, los desarrolladores de Fe pretenden mejorar su seguridad.
  • Aunque novedoso, Fe resultará familiar a los desarrolladores que han utilizado Python.

Christoph Burgdorf, un ingeniero de software de la Fundación Ethereum, ha anunciado un nuevo lenguaje de programación de contratos inteligentes, llamado Fe, que está actualmente en desarrollo.

"La mayoría de las aplicaciones desplegadas en la red Ethereum en estos días están escritas en Solidity. Creemos que el equipo de Solidity está haciendo un gran trabajo y está claramente haciendo muchas cosas bien para mantener su actual cuota de mercado. Sin embargo, también creemos que ofrecer más opciones para los desarrolladores será un neto positivo para el ecosistema", escribió Burgdorf ayer.

Llamado así por el símbolo químico hierro - o Ferrum en la tabla periódica - el Fe fue concebido originalmente como un spin-off de Vyper, un compilador de Ethereum escrito en el lenguaje de Rust. Sin embargo, los desarrolladores de Fe decidieron abordar algunas de las fallas de seguridad de Vyper que el estudio de Ethereum, ConsenSys (que financia a la editorial independiente Decrypt), destacó el año pasado.

"Aunque el objetivo inicial era tener un compilador de Vyper alternativo, eventualmente los lenguajes comenzaron a divergir en su sintaxis y se decidió hacer un corte limpio con un nuevo nombre. Así nació Fe", explicó Burgdorf.

Así, el proyecto heredó algunas características de Vyper -como la sintaxis fácil de usar de Python y el énfasis en la seguridad del lenguaje-, permaneciendo al mismo tiempo legible y familiar para los desarrolladores que usaban Python.

"En esta temprana etapa de desarrollo las diferencias entre Fe y Vyper son todavía limitadas. Por ahora, uno notará que el Fe toma prestadas algunas propiedades sintácticas de Rust. Es probable que el Fe comience a parecerse más a Rust a medida que continuemos añadiendo nuevas características", añadió Burgdorf.

Actualmente, los desarrolladores de Fe están trabajando en una especificación exhaustiva del lenguaje que se utilizaría para demostrar y probar la corrección del compilador, es decir, la capacidad de "corregir" el código producido y detectar diversos errores antes de su despliegue real.

Además, el lenguaje de Ethereum Fe tiene como objetivo separar los componentes del compilador en distintas bibliotecas que sigan las directrices estándar, señaló Burgdorf. También se planea utilizar Yul -un proyecto desarrollado por el equipo de Solidez- como "representación intermedia".

"[Yul] pretende ser un denominador común entre múltiples plataformas de bajo nivel, lo que significa que no necesitamos escribir backends separados para EVM 1.0, EVM 1.5, y eWASM, explicó Burgdorf, y añadió: "Por el momento, sólo estamos usando el backend de Solidity para la compilación de Yul. Esto nos ha ahorrado una cantidad significativa de tiempo".

Aunque no se reveló ninguna fecha clara de lanzamiento o hitos en el anuncio, Burgdorf señaló que el desarrollo de Fe en Ethereum "se ha acelerado significativamente" en el último mes. Algunos de sus códigos ya han sido descubiertos "por ahí".

"Somos optimistas sobre la adición de soporte para todas las características utilizadas en un contrato ERC20 y ser capaces de compilar uno antes de finales de 2020", dijo Burgdorf, y añadió: "Para ser claros, el compilador no será de ninguna manera una opción adecuada para producir ERC20 en este momento, pero esperamos demostrar las capacidades de Fe con un ejemplo de trabajo tan bien entendido".

Cualquier cosa que haga que los contratos inteligentes sean más fáciles de codificar será seguramente apreciado.