Nim (linguagem de programação)

 Nota: Para outros significados, veja Nim.
Nim
Logo do Nim
Paradigma Multiparadigma:
Surgido em 2008 (15–16 anos)
Última versão 2.0.4 (16 de abril de 2024; há 7 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

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.

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

Programa Olá Mundo

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

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

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

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

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

Referências

  1. «Release 2.0.4». GitHub (em inglês). 16 de abril de 2024. Consultado em 1 de maio 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

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