nim-lang / Nim

Build Status

este repositório contém o compilador Nim, stdlib de Nim, ferramentas e documentação.Para mais informações sobre a Nim, incluindo downloads e documentação para o lançamento mais recente, consulte o site da Nim ou docs bleeding edge.

Comunidade

Join a chat IRCJunte-se a Discórdia servidorSe o Gitter chatObter ajudaVer Nim postos de Estouro de PilhaSiga o @nim_lang no Twitter

  • O fórum, o melhor lugar para fazer perguntas e discutir Nim.
  • #Nim IRC Channel (Freenode) – um lugar para discutir Nim em tempo real.Também onde a maioria das decisões de desenvolvimento são tomadas.discórdia-um lugar adicional para discutir Nim em tempo real. A maioria dos canais estão ligados ao IRC.Gitter – um lugar adicional para discutir Nim em tempo real. Há uma ponte entre o Gitter e o canal IRC.Telegrama-um lugar adicional para discutir Nim em tempo real. Ali está o canal oficial de telegrama. Não ligado ao IRC.
  • Stack Overflow – um popular site Q/A para programação relatedtopics que inclui posts sobre Nim.
  • GitHub Wiki – Misc conteúdo contribuído pelo Usuário.

Compilação

o compilador suporta actualmente oficialmente as seguintes combinações de plataforma e arquitectura::

  • Windows (Windows XP ou superior) – x86 e x86_64
  • Linux (a maioria, se não todas, as distribuições) – x86, x86_64, ppc64 e armv6l
  • o Mac OS X (10.04 ou maior) – x86, x86_64 e ppc64

Mais plataformas são suportadas, no entanto, eles não são testados regularmente e theymay não ser tão estável como o acima listados plataformas.a compilação do compilador Nim é bastante simples se seguir estes passos:

primeiro, a fonte C de uma versão mais antiga do compilador Nim é necessária para tootstrap a última versão porque o compilador nim em si é escrito na linguagem de programação theNim. Essas fontes C estão disponíveis no repositórionim-lang/csources.

em seguida, para compilar a partir do código você precisará:

  • um compilador C tal como gcc 3.x / later or an alternative such as clangVisual C++ or Intel C++. Recomenda-se a utilização de gcc 3.x orlater.
  • ou gitou wget para baixar os repositórios de fonte necessários.
  • Thebuild-essential package when usinggcc on Ubuntu (and likelyother distros as well).
  • no Windows MinGW 4. 3. 0 (GCC 8. 10) é o compilador mínimo recomendado.
  • Nim apresenta uma distribuição MinGW de trabalho conhecida:
    • MinGW32. 7z
    • MinGW64.7z

Windows Nota: Cygwin e ambientes de execução POSIX semelhantes não são suportados.

Então, se você estiver em um *nix ou sistema Windows, os seguintes passos devem compileNim a partir do código fonte usando o gccgit, e o koch ferramenta de compilação.

Nota: Os seguintes comandos são para a versão de desenvolvimento do compilador.Para a maioria dos usuários, a instalação da última versão estável é suficiente. Confira as instruções de instalação no site para fazê-lo: https://nim-lang.org/install.html.

para mantenedores de Pacotes: ver orientações sobre embalagens.primeiro, obter Nim de github:

git clone https://github.com/nim-lang/Nim.gitcd Nim

em seguida, executar a compilação de shell script para a sua plataforma:

  • build_all.sh (Linux, Mac)
  • build_all.bat (Windows)

o Windows requer uma série de outras dependências que você pode precisar instalar includingPCRE e OpenSSL. Nim hospeda um pacote zip contendo versões de trabalho conhecidas de DLLs requisitados aqui.

finalmente, uma vez terminado os passos de compilação (no Windows, Mac ou Linux), deverá adicionar o directóriobin à sua localização.

Veja também a reconstrução do compilador.

Koch

koch é a ferramenta de compilação usada para construir várias partes da Nim e para generatedocumentation e o site, entre outras coisas. A ferramentakoch pode também ser usada para executar o conjunto de testes Nim.

assumindo que adicionou o ID de Nimbin directory ao seu PATH, poderá executar os testes usando ./koch tests. Os testes demoram um pouco a ser executados, mas você pode executar um subconjunto de testes especificando uma categoria (por exemplo./koch tests cat async).

para mais informações sobre a ferramenta de compilaçãokoch veja a documentação no doc/koch.o primeiro ficheiro.

Nimble

nimble é o Gestor de pacotes da Nim. Para saber mais sobre ele, consulte o repositórionim-lang/nimble.

contribuidores

este projeto existe graças a todas as pessoas que contribuem.

Contribuindo

Apoiadores em Abrir ColetivoPatrocinadores em Abrir ColetivoConfiguração de uma recompensa através de BountysourceDoar BitcoinsOpen Source Ajudantes

Veja detalhadas contribuindo com orientações.Congratulamo-nos com todas as contribuições para a Nim, independentemente de quão pequenas ou grandes são. Tudo, desde correções ortográficas a novos módulos a serem incluídos na biblioteca de Standard são bem-vindos e apreciados. Antes de você começar a contribuir,você deve familiarizar-se com a seguinte estrutura de repositório:

  • bin/build/ – estes diretórios estão vazias, mas são usados quando o Nim é construído.
  • compiler/ – o código fonte do compilador. Também inclui nimfix, e plugins dentro decompiler/nimfix e compiler/plugins, respectivamente.
  • nimsuggest – the nimsuggest tool that previously lived in thenim-lang/nimsuggest repository.
  • config/ – a configuração do compilador e gerador de documentação.
  • doc/ – the documentation files in restructurredtext format.
  • lib/ – the standard library, including:
    • pure/ – modules in the standard library written in pure Nim.
    • impure/ – módulos na biblioteca padrão escritos em Nim puro com dependências escritas em outras línguas.
    • wrappers/ – módulos que agrupam dependências escritas noutras línguas.
  • tests/ – contém testes categorizados para o compilador e biblioteca padrão.
  • tools/ – a de ferramentas, incluindo niminst e nimweb (principalmente invocado através dekoch).
  • koch.nim – a ferramenta usada para iniciar Nim, gerar fontes C, construir o site e gerar a documentação.

Se você não está familiarizado com fazer um pedido de puxão usando GitHub e/ou git, por favor leia este guia.idealmente, deve certificar-se de que todos os testes passam antes de apresentar um pedido de puxão.No entanto, se tiver pouco tempo, pode efectuar apenas os testes específicos das suas alterações, executando apenas as categorias de testes correspondentes. Travis CI verifica que todos os testes passam antes de permitir que o pedido de puxão seja aceito, então apenas a execução de testes específicos deve ser inofensivo.Os testes de integração devem ir em tests/untestable.se está à procura de formas de contribuir, por favor veja o nosso localizador de problemas.Há sempre uma abundância de questões rotuladas Easy; estes devem constituir um bom ponto de partida para uma primeira contribuição para a Nim.você também pode ajudar no desenvolvimento da Nim fazendo doações. As doações podem bemade usando:

  • Abra Coletivo
  • Bountysource
  • Bitcoin

Se você tiver alguma dúvida sinta-se livre para enviar uma pergunta no theNim fórum, ou através de IRC em #nim canal.

apoiadores

obrigado a todos os nossos apoiadores!

Patrocinadores

Apoiar este projecto, tornando-se um patrocinador. O seu logotipo irá aparecer aqui com um link para o seu site.

Você também pode ver uma lista de todos os nossos patrocinadores/apoiadores de vários serviços de pagamento no patrocinadores página do nosso site.

licença

o compilador e a biblioteca padrão são licenciados sob a licença MIT, exceto para alguns módulos que explicitamente afirmam o contrário. Como resultado, você pode usar qualquer licença compatível (essencialmente qualquer licença) para seus próprios programas desenvolvidos pelo withNim. Você está explicitamente autorizado a desenvolver aplicações comerciais usando Nim.

Por Favor leia a cópia.ficheiro txt para mais detalhes.

Deixe uma resposta

O seu endereço de email não será publicado.