nim-lang/Nim

Build Status

tämä arkisto sisältää Nim-kääntäjän, Nimin stdlibin, työkalut ja dokumentaation.Lisätietoja nimistä, mukaan lukien lataukset ja dokumentaatio viimeisintä julkaisua varten, löytyy Nimin verkkosivuilta tai bleeding edge-dokumenteista.

Community

Join the IRC chatJoin the Discord serverJoin the Gitter chatGet helpkatso nim - viestit pino overflow-sivustollaseuraa @nim_lang Twitterissä

  • keskustelufoorumi-paras paikka esittää kysymyksiä ja keskustella nim.
  • #nim IRC – kanava (Freenode)-paikka, jossa voi keskustella nimistä reaaliaikaisesti.Myös siellä, missä suurin osa kehityspäätöksistä tehdään.
  • Discord – lisäpaikka, jossa voi keskustella nimistä reaaliaikaisesti. Suurin osa kanavista on yhdistetty IRC: hen.
  • Gitter – lisäpaikka keskustella nim reaaliajassa. Gitterin ja IRC-kanavan välillä on silta.
  • Telegram – lisäpaikka, jossa voi keskustella nimistä reaaliaikaisesti. Tuolla on virallinen Telegram-kanava. Ei silloitettu IRC: hen.
  • Stack Overflow – suosittu Q / A-sivusto, joka sisältää nim-julkaisuja.
  • GitHub Wiki – Sekalaista käyttäjän tuottamaa sisältöä.

Kääntäjä

kääntäjä tukee tällä hetkellä virallisesti seuraavia Alustan ja arkkitehtuurin yhdistelmiä:

  • Windows (Windows XP tai uudempi) – x86 ja x86_64
  • Linux (useimmat, jos eivät kaikki, jakelut) – x86, x86_64, ppc64 ja armv6l
  • Mac OS X (10.04 tai uudempi) – x86, x86_64 ja ppc64

useampaa alustaa tuetaan, mutta niitä ei testata säännöllisesti ja ne eivät välttämättä ole yhtä vakaita kuin edellä luetellut alustat.

Nim-kääntäjän kääntäminen on melko yksinkertaista, jos noudatat näitä ohjeita:

ensinnäkin nim-kääntäjän vanhemman version C-lähdettä tarvitaan, jotta se voidaan liittää uusimpaan versioon, koska Nim-kääntäjä itsessään on kirjoitettu theNim-ohjelmointikielellä. Nämä C-lähteet löytyvät nim-lang/csources repository.

seuraavaksi lähteestä rakentaaksesi tarvitset:

  • C-kääntäjän, kuten gcc 3.x / later tai jokin vaihtoehto, kuten clangVisual C++ tai Intel C++gcc 3.X orlater.
  • joko git tai wget ladata tarvittavat lähdetietovarastot.
  • build-essential paketti käytettäessä gcc Ubuntussa (ja todennäköisesti myös muissa distroissa).
  • Windowsissa MinGW 4.3.0 (GCC 8.10) on pienin suositeltu kääntäjä.
  • Nim isännöi tunnettua toimivaa MinGW-jakelua:
    • MinGW32.7z
    • MinGW64.7z

Windows Note: Cygwin ja vastaavat POSIX-runtime-ympäristöt eivät ole tuettuja.

sitten, jos olet *nix-järjestelmässä tai Windowsissa, seuraavat vaiheet tulee koostaa lähteestä käyttäen gccgit, ja koch build tool.

Huomautus: seuraavat komennot ovat kääntäjän kehitysversiolle.Useimmille käyttäjille riittää uusimman vakaan version asentaminen. Katso asennusohjeet verkkosivuilta: https://nim-lang.org/install.html.

pakkausten ylläpitäjät: katso pakkausohjeet.

Hae ensin Nim GitHubista:

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

suorita seuraavaksi alustallesi sopiva komentotulkkikirjoitus:

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

Windows vaatii numeron muista riippuvuuksista, jotka saatat joutua asentamaan includingpcre ja OpenSSL. Nim isännöi zip paketti, joka sisältää tunnettuja toimivia versioita therequired DLL täällä.

lopuksi, kun olet suorittanut rakennusvaiheet (Windowsissa, Macissa tai Linuxissa), sinun tulisi lisätä bin Hakemisto POLKUUSI.

Katso myös kääntäjän uudelleenrakentaminen.

Koch

koch on rakentamisväline, jota käytetään Nim: n eri osien rakentamiseen sekä muun muassa yleistietoihin ja verkkosivuihin. koch – työkalua voidaan käyttää myös Nim-testisarjan ajamiseen.

olettaen, että olet lisännyt nimin bin hakemiston POLKUUSI, voit suorittaa testit käyttämällä ./koch tests. Testien suorittaminen kestää jonkin aikaa, mutta voit suorittaa osajoukon testejä määrittelemällä kategorian (esimerkiksi./koch tests cat async).

lisätietoja koch rakentamistyökalusta on dokumentissa doc / koch.ensimmäinen tiedosto.

Ketterä

nimble on Nimin paketinhallinta. Lisätietoja siitä onnim-lang/nimble repository.

avustajat

Tämä projekti on olemassa kaikkien mukana olevien ihmisten ansiosta.

Contributing

Backers on Open CollectiveSponsors on Open CollectiveSetup a bounty via Bountysourcedonate bitcoinsopen source helpers

Katso yksityiskohtaiset lahjoitusohjeet.Suhtaudumme myönteisesti kaikkiin Nim: lle annettaviin avustuksiin riippumatta siitä, kuinka pieniä tai suuria ne ovat. Kaikki oikeinkirjoituskorjauksista uusiin moduuleihin, jotka sisällytetään standardikirjastoon, ovat tervetulleita ja arvostettuja. Ennen kuin aloitat myötävaikuttamisen, kannattaa tutustua seuraavaan arkistorakenteeseen:

  • bin/build/ – nämä hakemistot ovat tyhjiä, mutta niitä käytetään, kun Nim rakennetaan.
  • compiler/ – kääntäjän lähdekoodi. Sisältää myös nimfixin, sekä liitännäisetcompiler/nimfix ja compiler/plugins.
  • nimsuggest – nimekkäin työkalu, joka aiemmin asui nim-lang/nimsuggest arkistossa.
  • config/ – kääntäjän ja dokumentaatiogeneraattorin kokoonpano.
  • doc/ – dokumentaatiotekstimuodossa.
  • lib/ – standardikirjasto, mukaan lukien:
    • pure/ – standardikirjaston modulit puhtaalla nimillä kirjoitettuina.
    • impure/ – standardikirjaston modulit, jotka on kirjoitettu puhtaalla nimillä muilla kielillä.
    • wrappers/ – moduulit, jotka käärivät muilla kielillä kirjoitettuja riippuvuuksia.
  • tests/ – sisältää kategorisoituja testejä kääntäjälle ja standardikirjastolle.
  • tools/ – työkalut mukaan lukien niminst ja nimweb (enimmäkseen vedottukoch).
  • koch.nim – työkalu, jota käytetään nimin käynnistämiseen, C-lähteiden luomiseen,verkkosivuston rakentamiseen ja dokumentaation luomiseen.

Jos et ole perehtynyt vetopyynnön tekemiseen Githubin ja / tai Gitin avulla, lue tämä opas.

Ihannetapauksessa sinun pitäisi varmistaa, että kaikki testit läpäisevät ennen pull-pyynnön lähettämistä.Kuitenkin, jos sinulla on lyhyt aika, voit vain suorittaa testit erityisiä Oman muutoksia suorittamalla vain vastaavat luokat testejä. Travis CI tarkistaa, että kaikki testit läpäisevät ennen pull-pyynnön hyväksymistä, joten vain erityisten testien suorittamisen pitäisi olla vaaratonta.Integraatiotestien pitäisi mennä tests/untestable.

Jos etsit tapoja osallistua, katso issue tracker.On aina paljon asioita merkitty Easy; niiden pitäisi olla hyvä lähtökohta Nim-hankkeelle.

Voit myös auttaa nimin kehittämisessä tekemällä lahjoituksia. Lahjoituksia voi tehdä käyttämällä:

  • Open Collective
  • Bountysource
  • Bitcoin

Jos sinulla on kysyttävää, voit vapaasti lähettää kysymyksen theNim-foorumilla tai IRC: n kautta #nim-kanavalla.

taustajoukot

Kiitos kaikille tukijoillemme!

sponsorit

tukevat tätä projektia ryhtymällä sponsoriksi. Logosi näkyy täällä linkki sivustoosi.

Katso myös lista kaikista sponsoreistamme/tukijat eri maksupalveluista sivustomme sponsorit-sivulla.

lisenssi

kääntäjä ja standardikirjasto on lisensoitu MIT-lisenssin nojalla, lukuun ottamatta joitakin moduuleja, joissa nimenomaisesti todetaan toisin. Tämän seurauksena, voit käyttää mitä tahansa compatible license (lähinnä mikä tahansa lisenssi) omia ohjelmia kehitetty withNim. Sinulla on nimenomaisesti lupa kehittää kaupallisia sovelluksia Nim: n avulla.

Lue kopiointi.txt-tiedosto lisätietoja.

Vastaa

Sähköpostiosoitettasi ei julkaista.