Nim (linguagem de programação)

linguagem de programação
 Nota: Para outros significados, veja Nim.

Nim (anteriormente conhecida como Nimrod) é uma linguagem de programação compilada de alto nível, estaticamente tipada, de propósito geral,[4] que é desenvolvida por Andreas Rumpf e foi lançada em 2008.

Nim
Logo do Nim
Paradigma Multiparadigma:
Surgido em 2008 (15–16 anos)
Última versão 2.0.2 (19 de dezembro de 2023; há 4 meses[1])
Criado por Andreas Rumpf
Estilo de tipagem
  • estática
  • forte
  • inferida
Influenciada por
Licença: MIT[3]
Extensão do arquivo: .nim
Página oficial nim-lang.org

O desenvolvimento iniciou em 2004, escrito em Object Pascal (usando o Free Pascal) e Python. Entretanto, a primeira versão capaz de compilar a si mesma foi lançada em 22 de agosto 2008 (versão 0.6.0). O compilador gera código C portável e o designa para um compilador externo (suporta MinGW/GCC e vários outros compiladores) para compilá-lo para código de máquina otimizado.

Nim usa indentação como delimitadores de bloco, como Python, e permite usar chaves ({}) como delimitadores, como C. Em identificadores (nomes de variáveis e funções), letras maiúsculas e minúsculas são tratadas como iguais, e underscores (_) são ignorados totalmente.

Exemplos editar

Programa Olá Mundo editar

 Ver artigo principal: Programa Olá Mundo
echo "Olá, Mundo!"

Pode ser compilado e executado com o seguinte comando:[5]

$ nim c -r hello.nim

Algoritmo de Trabb Pardo-Knuth editar

 Ver artigo principal: Algoritmo de Trabb Pardo-Knuth
import math, strformat, strutils, sugar

proc f(t: float): float =
  t.abs.sqrt + 5 * t.pow(3)

let a = collect(newSeq):
  for t in 0..10:
    stdin.readLine.parseFloat

for i in countdown(high(a), low(a)):
  let y = f(a[i])
  echo if y > 400: fmt"{i} TOO LARGE" else: fmt"{i} {y}"

Ver também editar

Referências

  1. «Release 2.0.2». GitHub (em inglês). 19 de dezembro de 2023. Consultado em 18 de janeiro de 2024 
  2. «Nim Programming Language». nim-lang.org (em inglês). Consultado em 28 de outubro de 2020 
  3. a b «FAQ - Nim». nim-lang.org (em inglês). Consultado em 18 de setembro de 2017 
  4. «Features - Nim». nim-lang.org (em inglês). Consultado em 18 de setembro de 2017 
  5. Rumpf, Andreas. «Nim Tutorial (Part I)». nim-lang.org (em inglês). Consultado em 29 de outubro de 2020 

Ligações externas editar

  Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.