nim-lang / Nim

Byg Status

dette arkiv indeholder Nim-kompilatoren, Nim ‘ s stdlib, værktøjer og dokumentation.For mere information om Nim, herunder overførsler og dokumentation forden seneste udgivelse, tjek Nims hjemmeside eller bleeding edge docs.

fællesskab

Deltag i IRC chatDeltag i Discord - serverenDeltag i Gitterchatfå hjælpse nim-indlæg på stakoverløbfølg @nim_lang på kvidre

  • forummet-det bedste sted at stille spørgsmål og diskutere nim.
  • #nim IRC Channel (Freenode) – et sted at diskutere Nim i realtid.Også hvor de fleste udviklingsbeslutninger træffes.
  • Discord – et ekstra sted at diskutere Nim i realtid. De fleste kanaler der er bro til IRC.
  • Gitter-et ekstra sted at diskutere Nim i realtid. Der er en bro mellem Gitter og IRC-kanalen.
  • Telegram-et ekstra sted at diskutere Nim i realtid. Thereis den officielle Telegram kanal. Ikke bro til IRC.
  • Stack overløb – et populært spørgsmål / et sted til programmering af relaterede emner, der indeholder indlæg om Nim.
  • GitHub bruger – bidraget indhold.

kompilering

kompilatoren understøtter i øjeblikket officielt følgende platform ogarkitektur kombinationer:

  • vinduer (vinduer eller større) – 86 og 86_64
  • Linuks (de fleste, hvis ikke alle distributioner) – 86, 86_64, ppc64 og armv6l
  • Mac OS (10.04 eller større) – 86, 86_64 og ppc64

flere platforme understøttes, men de er ikke ikke testet regelmæssigt og dekan ikke være så stabil som de ovennævnte platforme.

kompilering af Nim-kompilatoren er ret ligetil, hvis du følger disse trin:

for det første er C-kilden til en ældre version af Nim-kompilatoren nødvendig tootstrap den nyeste version, fordi Nim-kompilatoren selv er skrevet inim programmeringssprog. Disse C-kilder er tilgængelige inim-lang/csources repository.

for at bygge fra kilden skal du bruge:

  • en C-kompilator som gccclangVisual C++eller Intel C++. Det anbefales at bruge gcc 3.senere.
  • enten giteller wget for at hente de nødvendige kildelagre.
  • build-essential pakken, når du brugergcc på Ubuntu (og sandsynligvisandre distros også).4.3.0 (GCC 8.10) er den mindste anbefalede compiler.
  • Nim er vært for en kendt arbejdsgruppe Mingv-distribution:
    • Mingv32.7s
    • Mingv64.7s

vinduer Bemærk: Cygvin og lignende Posis runtime-miljøer understøttes ikke.

derefter, hvis du er på et *nik-system eller vinduer, skal følgende trin kompilere fra kilde ved hjælp afgccgitogkoch build tool.

Bemærk: følgende kommandoer er til udviklingsversionen af kompilatoren.For de fleste brugere er det nok at installere den nyeste stabile version. Tjek installationsinstruktionerne på hjemmesiden for at gøre det: https://nim-lang.org/install.html.

for pakkevedligeholdere: se retningslinjer for emballage.

først, få Nim fra github:

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

kør derefter det relevante build shell-script til din platform:

  • build_all.sh (Mac)
  • build_all.bat (vinduer)

vinduer kræver en række andre afhængigheder, som du muligvis skal installere, inkludererpcre og OpenSSL. Nim er vært for en lynlåspakke, der indeholder kendte arbejdsversioner af de krævede DLL ‘ er her.

endelig skal du tilføjebin mappen til din sti.

se også genopbygning af kompilatoren.

Koch

koch er byggeværktøjet, der bruges til at bygge forskellige dele af Nim og til genereretdokumentation og hjemmesiden, blandt andet. Værktøjetkoch kan ogsåbruges til at køre Nim test suite.

Hvis du antager, at du har tilføjet Nim ‘ sbin mappe til din sti, kan du udføretestene ved hjælp af./koch tests. Testene tager et stykke tid at køre, men Dukan køre en delmængde af tests ved at angive en kategori (for eksempel./koch tests cat async).

For mere information omkoch byg værktøj se dokumentationinden for doc/koch.første fil.

Nimble

nimble er Nims pakkehåndtering. For at lære mere om det, senim-lang/nimble repository.

bidragydere

dette projekt eksisterer takket være alle de mennesker, der bidrager.

Bidrag

Backers on Open Collectivesponsorer på Open CollectiveOpsæt en bounty via Bountysourcedoner bitcoinsopen source hjælpere

se detaljerede bidragende retningslinjer.Vi glæder os over alle bidrag til Nim, uanset hvor små eller store de er. Alt fra stavning rettelser til nye moduler, der skal indgå i thestandard bibliotek er velkomne og værdsat. Før du begynder at bidrage, skal du gøre dig bekendt med følgende opbevaringsstruktur:

  • bin/build/ – disse mapper er tomme, men bruges, når Nim er bygget.
  • compiler/ – kompilatorens kildekode. I compiler/nimfixog compiler/plugins hhv.
  • nimsuggest – nimsuggest-værktøjet, der tidligere levede i nim-lang/nimsuggest repository.
  • config/ – konfigurationen til kompilatoren og dokumentationsgeneratoren.
  • doc/ – dokumentationsfilerne i omstrukturerettekstformat.
  • lib/ – standardbiblioteket, herunder:
    • pure/ – moduler i standardbiblioteket skrevet i ren Nim.
    • impure/ – moduler i standardbiblioteket skrevet i ren Nim medafhængigheder skrevet på andre sprog.
    • wrappers/ – moduler, der pakker afhængigheder skrevet på andre sprog.
  • tests/ – indeholder kategoriserede tests til kompilatoren og standardbiblioteket.
  • tools/ – værktøjerne inklusive niminstog nimweb(for det meste påberåbt viakoch).
  • koch.nim – værktøjet, der bruges til at bootstrap Nim, generere C-kilder,opbygge hjemmesiden og generere dokumentationen.

Hvis du ikke er bekendt med at lave en pull-anmodning ved hjælp af GitHub og / eller git, bedes du læse denne vejledning.

ideelt set skal du sørge for, at alle test passerer, inden du sender en pull-anmodning.Men hvis du har kort tid, kan du bare køre de tests, der er specifikke for dinændringer ved kun at køre de tilsvarende kategorier af tests. Travis CI verificerer, at alle test passerer, før pull-anmodningen accepteres, så kunkørsel af specifikke tests skal være ufarlig.Integrationstest skal gå i tests/untestable.

Hvis du leder efter måder at bidrage på, skal du se på vores issue tracker.Der er altid masser af problemer mærket Easy; disse bør være et godt udgangspunkt for et indledende bidrag til Nim.

Du kan også hjælpe med udviklingen af Nim ved at give donationer. Donationer kan værelavet ved hjælp af:

  • Open Collective
  • Bountysource
  • Bitcoin

Hvis du har spørgsmål, er du velkommen til at indsende et spørgsmål på theNim forum eller via IRC på #nim-kanalen.

Backers

tak til alle vores backers!

sponsorer

støt dette projekt ved at blive sponsor. Dit logo vises her med et link til din hjemmeside.

Du kan også se en liste over alle vores sponsorer/backers fra forskellige betalingstjenester på sponsorsiden på vores hjemmeside.

Licens

kompilatoren og standardbiblioteket er licenseret under MIT-licensen, undtagen for nogle moduler, der udtrykkeligt angiver andet. Som et resultat kan du bruge enhver kompatibel licens (i det væsentlige enhver licens) til dine egne programmer udviklet mednim. Du har udtrykkeligt tilladelse til at udvikle kommercielle applikationer ved hjælp af Nim.

Læs venligst kopieringen.tekstfil for flere detaljer.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.