detta arkiv innehåller nim-kompilatorn, Nim: s stdlib, verktyg och dokumentation.För mer information om Nim, inklusive nedladdningar och dokumentation förden senaste versionen, kolla in Nims webbplats eller bleeding edge docs.
Community
- forumet-det bästa stället att ställa frågor och diskutera nim.
- #nim IRC Channel (Freenode)-en plats att diskutera Nim i realtid.Också där de flesta utvecklingsbeslut fattas.
- Discord-en extra plats att diskutera Nim i realtid. De flesta kanaler där är överbryggade till IRC.
- Gitter-en extra plats att diskutera Nim i realtid. Det finns en bro mellan Gitter och IRC-kanalen.
- Telegram-en extra plats för att diskutera Nim i realtid. Det finns den officiella telegramkanalen. Inte överbryggad till IRC.
- Stack Overflow-en populär Q / A-webbplats för programmering av relateradeämnen som innehåller inlägg om Nim.
- Github Wiki-Övrigt användarbidraget innehåll.
kompilering
kompilatorn stöder för närvarande officiellt följande plattform ocharkitekturkombinationer:
- Windows (Windows XP eller senare) – x86 och x86_64
- Linux (de flesta, om inte alla, distributioner) – x86, x86_64, ppc64 och armv6l
- Mac OS X (10.04 eller senare) – x86, x86_64 och ppc64
fler plattformar stöds, men de testas inte regelbundet och dekan inte vara lika stabila som de ovan angivna plattformarna.
att sammanställa nim-kompilatorn är ganska enkelt om du följer dessa steg:
För det första behövs C-källan till en äldre version av nim-kompilatorn tobootstrap den senaste versionen eftersom Nim-kompilatorn själv är skriven i theNim-programmeringsspråket. Dessa c-källor är tillgängliga inim-lang/csources
repository.
Nästa, för att bygga från källan behöver du:
- en C-kompilator som
gcc
3.x / senare eller ett alternativ somclang
Visual C++
ellerIntel C++
. Det rekommenderas att användagcc
3.x ellersenare. - antingen
git
ellerwget
för att ladda ner de nödvändiga källförvaren. -
build-essential
paketet när du användergcc
på Ubuntu (och likelyother distros också). - på Windows MinGW 4.3.0 (GCC 8.10) är den minsta rekommenderade kompilatorn.
- Nim är värd för en känd fungerande MinGW-distribution:
- MinGW32.7z
- MinGW64.7z
Windows Obs! Cygwin och liknande POSIX runtime-miljöer stöds inte.
Om du är på ett *nix-system eller Windows, bör följande steg kompilenim från källan med gcc
git
och koch
byggverktyg.
Obs: följande kommandon är för utvecklingsversionen av kompilatorn.För de flesta användare är det tillräckligt att installera den senaste stabila versionen. Kolla ininstallationsinstruktionerna på webbplatsen för att göra det: https://nim-lang.org/install.html.
för paketansvariga: se förpackningsriktlinjer.
först, få Nim från github:
git clone https://github.com/nim-lang/Nim.gitcd Nim
kör sedan lämpligt byggskalskript för din plattform:
-
build_all.sh
(Linux, Mac) -
build_all.bat
(Windows)
Windows kräver ett nummer av andra beroenden som du kan behöva installera inklusivepcre och OpenSSL. Nim är värd för ett zip-paket som innehåller kända arbetsversioner av nödvändiga dll-filer här.
slutligen, när du är klar med byggstegen (på Windows, Mac eller Linux) bör du lägga till katalogenbin
till din sökväg.
Se även ombyggnad av kompilatorn.
Koch
koch
är byggverktyget som används för att bygga olika delar av Nim och till generatedokumentation och webbplatsen, bland annat. Verktyget koch
kan ocksåanvänds för att köra nim-testpaketet.
förutsatt att du har lagt till Nim: s bin
katalog till din sökväg, kan du köratesterna med ./koch tests
. Testerna tar ett tag att köra, men dukan köra en delmängd av tester genom att ange en kategori (till exempel./koch tests cat async
).
För mer information omkoch
byggverktyg se dokumentationinom doc / koch.första filen.
Nimble
nimble
är Nim: s pakethanterare. För att lära dig mer om det, senim-lang/nimble
repository.
bidragsgivare
detta projekt finns tack vare alla människor som bidrar.
bidra
se detaljerade bidragande riktlinjer.Vi välkomnar alla bidrag till Nim oavsett hur små eller storade är. Allt från stavningsfixar till nya moduler som ska ingå i standardbiblioteket välkomnas och uppskattas. Innan du börjar bidra bör du bekanta dig med följande lagringsstruktur:
-
bin/
build/
– dessa kataloger är tomma, men används när Nim är byggt. -
compiler/
– källkoden för kompilatorn. Inkluderar även nimfix och plugins inomcompiler/nimfix
ochcompiler/plugins
respektive. -
nimsuggest
– nimsuggest-verktyget som tidigare bodde inim-lang/nimsuggest
repository. -
config/
– konfigurationen för kompilatorn och dokumentationsgeneratorn. -
doc/
– dokumentationsfilerna i reStructuredText-format. -
lib/
– standardbiblioteket, inklusive:-
pure/
– moduler i standardbiblioteket skrivet i ren Nim. -
impure/
– moduler i standardbiblioteket skrivet i ren Nim medberoende skrivna på andra språk. -
wrappers/
– moduler som omsluter beroenden skrivna på andra språk.
-
-
tests/
– innehåller kategoriserade tester för kompilatorn och standardbiblioteket. -
tools/
– verktygen inklusiveniminst
ochnimweb
(mestadels åberopas viakoch
). -
koch.nim
– verktyget som används för att bootstrap Nim, generera C-källor, bygga webbplatsen och generera dokumentationen.
Om du inte är bekant med att göra en pull-begäran med GitHub och/eller git, vänligen läs den här guiden.
helst bör du se till att alla tester passerar innan du skickar in en pull-begäran.Men om du har kort tid kan du bara köra de tester som är specifika för dinändringar genom att bara köra motsvarande kategorier av test. Travis CI verifieraratt alla tester passerar innan dragförfrågan godkänns, så att endast körande specifika tester ska vara ofarliga.Integrationstester ska gå i tests/untestable
.
om du letar efter sätt att bidra, titta på vår issue tracker.Det finns alltid många problem märkta Easy
; dessa bör vara en bra utgångspunkt för ett första bidrag till Nim.
Du kan också hjälpa till med utvecklingen av Nim genom att göra donationer. Donationer kan göras med:
- Open Collective
- Bountysource
- Bitcoin
Om du har några frågor kan du skicka in en fråga på theNim forum eller via IRC på #nim-kanalen.
Backers
Tack till alla våra backers!
sponsorer
stödja detta projekt genom att bli sponsor. Din logotyp visas här med en länk till din webbplats.
Du kan också se en lista över alla våra sponsorer/stödjare från olika betaltjänster på sponsorsidan på vår hemsida.
licens
kompilatorn och standardbiblioteket är licensierade under MIT-licensen, utom för vissa moduler som uttryckligen anger något annat. Som ett resultat kan du använda anycompatible licens (i huvudsak någon licens) för dina egna program som utvecklats withNim. Du får uttryckligen utveckla kommersiella applikationer med Nim.
läs kopieringen.txt-fil för mer information.