Nim es un lenguaje de programación de sistemas compilados de tipo estático. Combina conceptos exitosos de lenguajes maduros como Python, Ada y Modula.
Instalar Nim en Windows es muy fácil. Debes descargarlo y descomprimir la carpeta en la ruta que quieras. Ejecuta el programa finish.exe y sigue el wizard de instalación.
En plataformas como Ubuntu tan solo debes escribir:
$ sudo apt-get install nim
Un programa en Nim tiene la extensión *.nim y para ejecutar un programa es tan sencillo como esto:
1. Creamos el programa.
var x, y, z: int nombre: string x=5 y=9 z=21 nombre = "Juan Pasamontañas" echo "Nombre: ",nombre echo "x: ",x
2. compilar y ejecutar
$ nim compile --run programa.nim
Docker
Instalamos una imagen de Nim con Docker:
$ docker pull nimlang/nim
Mostramos la imagen:
$ docker images -a
hola.nim
echo "Hola, mundo!!!"
Ejecutamos imagen:
$ docker run --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim nim c -r hola.nim
Salida:
Hola, mundo
fundamentos.nim
import strutils #procedimiento proc concatenar(cadena:string, item:string):string= return cadena & item proc hacerMayuscula(cad:string):string = return cad.toUpper() #funciones func hacerMinuscula(cad:string):string= cad.toLower() echo "Programación en Nim lang" var verdadero:bool = 33 > 11 if verdadero: echo "Esto es cierto!!!" var nombre, correo:string a, b, c:int suma, cont:int nombre = "Juana Huertas" correo = "huertas.juana@latinmail.com" a=10 b=4 c=11 echo "Nombre: ",nombre," --> correo: ",correo var mayor = a if mayor <b> 0: echo "Cont: ",cont cont = cont - 15 suma += cont echo "Suma final: ",suma for nom in nombre: echo "Caracter: ",nom echo "------------------------------------------------------" var cadena: string="ABC" for c in cadena: echo "Caracter: ",c echo "------------------------------------------------------" echo "Cadena: ",hacerMayuscula("udidubi") echo "Cadena: ",hacerMinuscula("JUNTIDUNTI") echo "Concatenar: ",concatenar("Juanito", " Frijoles ")# Juanito Frijoles echo "------------------------------------------------------" for i in cadena: echo "\tA. Caracter: ",i for j in cadena: echo "B. Caracter: ",j echo "-------------------------------------------------------" var arreglo = [1,2,3,4] for numx in arreglo: echo "\tA--> ",numx for numy in arreglo: echo "B--> ",numy echo "--------------------------------------------------------" let tupla = (true,"codemonkey.junior@latinmail.com",138.0, ["ALEF","BET","GIMMEL"], "Codemonkey Junior") echo "Tupla: ",tupla
Links:
https://dev.to/aligoren/getting-started-nim-lang-3g5b
https://nim-lang.org/
https://hub.docker.com