Executando verificação de segurança...
12

Criei uma linguagem, Noxy! Uma linguagem com sintaxe simples e com tipagem forte.

Olá pessoal,
Gostaria de compartilhar a linguagem que criei com intuito de estudo de interpretadores.
Criei a linguagem com as seguintes metas em mente:

  • Ser simples
  • Ser estática e com tipagem forte
  • Não utilizar chaves
  • Ter um sistema de gestão de memória com controle e simples

Apesar de estar em estágio experimental ela já permitiu criar um:

  • Interpretador de Brain Fuck
  • E aplicações web completas utilizando banco de dados

Sobre a implementação, o interpretador é uma máquina virtual baseada em pilhas escrita em Go!

Segue um trecho de código:

func fibonacci(n: int) -> int
    if n <= 1 then
        return n
    end
    return fibonacci(n-1) + fibonacci(n-2)
end

func imprimir_fibonacci(qtd: int) -> void
    let i: int = 0
    while qtd >= 0 do
        print(f"F({i}) = {fibonacci(i)}")
        i = i + 1
        qtd = qtd - 1
    end
end

imprimir_fibonacci(10)

A linguagem é opensource fiquem a vontade para sugerir melhorias e experimentar:
https://github.com/estevaofon/noxy

Carregando publicação patrocinada...
2
1

Já, sou fã de lua, com certeza é uma das inspirações! No momento eu tenho focado em ter um núcleo consolidado da linguagem! Mas realmente seria um projeto bem legal converter para lua! Um abraço!

2
1

Ótima pergunta! Um compilador eu não conseguiria devido a implementação atual ser um interpretador. O que é possível é criar um interpretador para a linguagem noxy utilizando o próprio noxy! Abraço!

0
1

Muito obrigado pelo incentivo e as referências! s2
Ela atualmente valida tipos em tempo de compilação, por esse aspecto ela é estática. Ela não permite promover tipos de forma automática, em virtude disso, ela tem tipagem forte. Ela também permite tipos como any para lidar com json variados, tendo também um aspecto de tipagem gradual.

-1
0
-3

Francamente? Para estudo é legal, a uns anos atrás, sem IA você seria no mínimo um gênio se tivesse feito.

Mas na prática não é nada absurdo hoje, com IA porquê não soluciona nenhum grande problema anterior, tipo, C resolve Assembly, C++ resolve C e assim por diante.

Parabéns pela iniciativa.