Sie sind eingeladen, zu zukünftigen Versionen des F#-Compilers, der Kernbibliothek und der Tools beizutragen. Die Entwicklung dieses Repositorys kann auf jedem von .NET unterstützten Betriebssystem erfolgen.
Sie müssen außerdem das .NET SDK von hier aus installieren. Die genaue Version finden Sie in der Datei global.json im Stammverzeichnis des Repositorys.
Erstellen Sie über die Befehlszeile:
build.cmd
Der Build hängt von einer Installation von Visual Studio ab. Um den Compiler ohne diese Abhängigkeit zu erstellen, verwenden Sie:
build.cmd -noVisualStudio
Öffnen Sie anschließend entweder FSharp.sln
oder VisualFSharp.sln
in einem Editor Ihrer Wahl. Die letztgenannte Lösung ist umfangreicher, umfasst jedoch die F#-Tools für Visual Studio und die zugehörige Infrastruktur.
Erstellen Sie über die Befehlszeile:
./build.sh
Wenn es fertig ist, öffnen Sie FSharp.sln
in einem Editor Ihrer Wahl.
Die Compiler-Dokumentation ist eine unverzichtbare Lektüre für alle größeren Beiträge zur F#-Compiler-Codebasis und enthält Links zu Lernvideos, Architekturdiagrammen und anderen Ressourcen.
Die gleichen Dokumente werden auch als The F# Compiler Guide veröffentlicht. Es enthält auch die öffentlich durchsuchbaren Dokumente für die FSharp.Compiler.Service-Komponente.
Weitere Details zu Konfigurationen zum Erstellen der Codebasis finden Sie unter DEVGUIDE.md. In der Praxis müssen Sie nur build.cmd
/ build.sh
ausführen.
Informationen zu den verschiedenen Testsuiten in dieser Codebasis und deren individuelle Ausführung finden Sie unter TESTGUIDE.md.
Die F#-Dokumentation ist die primäre Dokumentation für F#. Die Quelle für den Inhalt finden Sie hier.
Der F#-Sprachentwurfsprozess ist der grundlegende Entwurfsprozess für die Sprache, von Vorschlägen bis hin zu abgeschlossenen RFCs. Es gibt auch Tooling-RFCs für einige Themen, bei denen gemeinschaftsübergreifende Zusammenarbeit und Sichtbarkeit am nützlichsten sind.
Die F#-Sprachspezifikation ist eine ausführliche Beschreibung der F#-Sprache. Dies ist wichtig, um einige Verhaltensweisen des F#-Compilers und einige Regeln innerhalb der Compiler-Codebasis zu verstehen. Hier werden beispielsweise die Reihenfolge und die Art und Weise der Namensauflösung angegeben, was großen Einfluss darauf hat, wie der Code in Name Resolutions funktioniert und warum bestimmte Entscheidungen getroffen werden.
Auch wenn Ihnen ein einzelner Tippfehler auffällt, übernehmen wir die Änderung gerne! Obwohl die Codebasis für Anfänger entmutigend sein kann, helfen wir und andere Mitwirkende Ihnen gerne weiter.
Sie sind sich nicht sicher, wo Sie einen Beitrag leisten sollen? Schauen Sie sich die kuratierte Liste der Probleme an, bei denen Sie um Hilfe bitten. Wenn Sie sich mit einem dieser Themen befassen möchten, nutzen Sie den Kommentarbereich des ausgewählten Problems, um Ihr Interesse zu bekunden, und fragen Sie gerne nach einer ersten Anleitung. Wir helfen gerne bei der Lösung offener Probleme und machen gleichzeitig eine erfolgreiche PR, die sich mit dem Problem befasst.
Die Probleme in diesem Repository können hinsichtlich der Komplexität ihrer Behebung große Unterschiede aufweisen. Fängst du gerade an? Wir haben auch ein Label für gute Erstausgaben.
FSharp.Compiler.Service 43.7.400-Vorschau
< add key = " fsharp-prerelease " value = " https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json " />
FSharp.Compiler.Service 43.8.100-Vorschau
< add key = " fsharp-prerelease " value = " https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json " />
HINWEIS: Offizielle NuGet-Versionen von FCS und FSharp.Core werden mit SDK-Versionen synchronisiert (absichtlich – wir möchten synchron sein). Nächtliche Pakete werden bei jeder erfolgreichen Einfügung in Azure-Feeds veröffentlicht.
Dies sind die verwendeten Zweige:
main
release/dev15.9
release/dev17.x
Die Entwicklung der F#-Sprache und der Kernbibliothek folgt einem Prozess, der zwei zusätzliche Repositorys umfasst. Der Prozess ist wie folgt:
Dieses Projekt unterliegt der MIT-Lizenz. Eine Kopie dieser Lizenz befindet sich in License.txt.
Dieses Projekt hat den Verhaltenskodex des Contributor Covenant übernommen, um das erwartete Verhalten in unserer Community zu klären. Sie können es unter CODE_OF_CONDUCT lesen.
Mitglieder der F# Software Foundation sind zum FSSF Slack eingeladen. Unterstützung von anderen Mitwirkenden finden Sie in den Kanälen #compiler
und #editor-support
.
Darüber hinaus können Sie das Tag #fsharp
auf Twitter verwenden, wenn Sie allgemeine Fragen zu F# haben, auch zu diesem Repository. Die Chancen stehen gut, dass Sie mehrere Antworten erhalten.
Wenn Sie sich für F# selbst interessieren, schauen Sie sich diese Links an: