Verse es un intérprete del lenguaje de programación Verse. En el futuro, el objetivo es convertir este proyecto en un paquete todo en uno compuesto por un intérprete, un compilador y un depurador. Verse está diseñado para compilarse directamente en código de máquina y ofrece todas las características que ofrecería un lenguaje de bajo nivel, al mismo tiempo que se puede interpretar como lenguajes como Python o Ruby (lo que mejora la portabilidad y reduce la pérdida de tiempo al eliminar la necesidad de realizar una compilación completa de su código base solo para ejecutar pruebas unitarias).
Para instalar verse, debes compilarlo desde la fuente. De forma predeterminada, el proceso de compilación intenta usar clang++
, pero puedes cambiarlo para que use g++
si así lo deseas. De cualquier manera se requiere c++20
o superior.
$$ git clone https://www.github.com/fDero/Verse$$ cd Verse$$ hacer compilación
Para hacer tu primer programa de hola mundo en verso, todo lo que necesitas es crear un archivo con la extensión .verse
(en este caso, se llamará hello.verse
) que contiene el siguiente código:
func main(){println("¡Hola mundo!"); }
Una vez que haya configurado el archivo, para ejecutarlo simplemente use el comando verse -r hello.verse
en la consola.
$$ verso -r hola.verso$$ ¡Hola mundo!
Verse es un lenguaje estrictamente tipificado, tiene un sistema de tipos estilo C con Int
, Float
, Bool
, Char
, String
como tipos primitivos.
func main(){var x: Int = 6;var y: Float = 9.4;var f: Bool = false;var c: Char = 'z';var s: String = "hola mundo"; }
Verse soporta la recursividad como cualquier otro lenguaje, y una buena manera de demostrarlo es con el ejemplo clásico de Fibonacci, considera el siguiente código:
func fibo(n: Int){si (n < 2) {devolver 1; }else {devuelve fibo(n-1) + fibo(n-2); } }func principal(){println(fibo(6)); }
suponiendo que el archivo se llama fibo.verse
, entonces se puede ejecutar tal como lo hicimos anteriormente con el ejemplo de hola mundo, usando el comando verse -r
.
$$ verso -r fibo.verso$$ 21