Vad är filformatet FS?
.fs är filändelsen för källkod i F#, ett funktionellt, starkt typat programmeringsspråk utvecklat av Don Syme vid Microsoft Research. F# körs på .NET-runtimen och kompileras till .NET Intermediate Language via F#-kompilatorn, fsc.
En .fs-fil är vanlig UTF-8-text som innehåller en ordnad sekvens av module- eller namespace-deklarationer, open-satser för import, typdefinitioner, let-bindningar och uttryck. Det är viktigt att komma ihåg att ordningen spelar roll i F#: kompilatorn bearbetar deklarationer uppifrån och ned, och filer i ett projekt måste listas i projektfilen .fsproj i explicit kompileringsordning - till skillnad från C# eller Java, där deklarationsordningen inom ett projekt generellt sett är irrelevant.
F# stöder funktionella programmeringsmönster (immutabel data som standard, mönstermatchning, diskriminerade unioner, beräkningsuttryck) tillsammans med objektorienterade funktioner ärvda från .NET. Språket har utvecklats från version 1.0 (2005, Microsoft Research) till F# 9.0 (2024).
Relaterade filändelser inkluderar .fsi (gränssnitts-/signaturfiler för F#, analogt med C-headerfiler) och .fsx (F#-skriptfiler, som körs utan explicit kompilering via dotnet fsi). Fable-kompilatorn kan transpilera .fs-källkod till JavaScript, vilket möjliggör körning i webbläsare och Node.js.
.fs-filer stöds nativt av Visual Studio 2022, JetBrains Rider och Visual Studio Code med Ionide-tillägget.
Säkerhet & trygghet
RISK: LOWKällkod i klartext; ingen risk vid visning. Risk uppstår endast om du kompilerar och kör okänd F#-kod.
Formatdetaljer
i ett nötskal- BRKSYS FS (filsystemsavbildning) - Vissa emulatorer/OS-verktygskedjor använder .fs för råa filsystemsavbildningar; ej relaterat till F#-källkod.
- Haskell-modul (sällsynt) - Ibland förekommer suffixet .fs i äldre Haskell-kodbaser, men .hs är standard; mycket sällsynt.
Program som öppnar FS-filer
Tekniska detaljer
djup specifikation| Språk | F# - funktionellt, starkt typat .NET-språk utvecklat av Don Syme vid Microsoft Research |
| Kodning | UTF-8-text; BOM är valfritt; Visual Studio använder som standard UTF-8 utan BOM |
| Kompilator | `fsc` (F#-kompilator); kompilerar `.fs`-filer till .NET IL; anropas via `dotnet build` i MSBuild-projekt |
| Kompileringsordning | Filer måste listas i `.fsproj` uppifrån och ned; ordningen är semantiskt signifikant - framåtreferenser är inte tillåtna |
| Språkversionering | F#-språkversion ställs in via egenskapen `LangVersion` i `.fsproj`; nuvarande är F# 9.0 (2024) |
| Paradigm | Funktionellt (immutabelt som standard, mönstermatchning, diskriminerade unioner, beräkningsuttryck) med fullt stöd för OOP |
| Typsystem | Hindley-Milner-typhärledning; explicita typannoteringar är valfria i de flesta sammanhang |
| Modulsystem | Toppnivådeklarationer av `module` eller `namespace`; cirkulära referenser mellan filer är inte tillåtna |
| Relaterade filändelser | `.fsi` (gränssnitts-/signaturfil), `.fsx` (skript), `.fsproj` (MSBuild-projektfil) |
| Körningsmiljöer | .NET 6+ på Windows, Linux, macOS; även JavaScript via transpileraren Fable |
| Skriptläge | `.fsx`-filer körs via `dotnet fsi` utan explicit kompilering; `.fs`-filer kräver ett projekt eller direkt anrop av `fsc` |
| IDE-stöd | Visual Studio 2022, Visual Studio Code med Ionide-tillägget, JetBrains Rider |
| Släppt | 2005 (F# 1.0, Microsoft Research); Visual Studio integration since 2010 (VS 2010) |
| Senaste version | F# 9.0 (2024) |
| Öppen standard | Ja · royaltyfri |
| Specifikation | fsharp.org |
FS-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om FS-filer.