¿Qué es el formato de archivo FS?
.fs es la extensión de archivo de código fuente para F#, un lenguaje de programación fuertemente tipado y orientado a la programación funcional desarrollado por Don Syme en Microsoft Research. F# tiene como objetivo el entorno de ejecución .NET y se compila a lenguaje intermedio de .NET a través del compilador de F#, fsc.
Un archivo .fs es texto plano en UTF-8 que contiene una secuencia ordenada de declaraciones de module o namespace, sentencias de importación open, definiciones de tipos, enlaces let y expresiones. Crucialmente, el orden importa en F#: el compilador procesa las declaraciones de arriba hacia abajo, y los archivos dentro de un proyecto deben enumerarse en el archivo de proyecto .fsproj en el orden de compilación explícito, a diferencia de C# o Java, donde el orden de declaración dentro del proyecto es generalmente irrelevante.
F# admite modismos de programación funcional (datos inmutables por defecto, coincidencia de patrones, uniones discriminadas, expresiones de computación) junto con características orientadas a objetos heredadas de .NET. El lenguaje ha evolucionado desde la versión 1.0 (2005, Microsoft Research) hasta F# 9.0 (2024).
Las extensiones complementarias incluyen .fsi (archivos de interfaz/firma de F#, análogos a los archivos de cabecera de C) y .fsx (archivos de script de F#, ejecutados sin compilación explícita a través de dotnet fsi). El compilador Fable puede transpilar el código fuente .fs a JavaScript, permitiendo objetivos en navegadores y Node.js.
Los archivos .fs son compatibles de forma nativa con Visual Studio 2022, JetBrains Rider y Visual Studio Code con la extensión Ionide.
Seguridad y protección
RIESGO: LOWCódigo fuente de texto plano; sin riesgo ejecutable al visualizarse. El riesgo surge solo si compila y ejecuta código F# no confiable.
Detalles del formato
en pocas palabras- BRKSYS FS (imagen de sistema de archivos) - Algunas cadenas de herramientas de emuladores/SO usan .fs para imágenes de sistema de archivos sin procesar; no relacionado con el código fuente de F#.
- Módulo Haskell (raro) - Ocasionalmente el sufijo .fs aparece en bases de código de Haskell antiguas, pero .hs es el estándar; muy poco común.
Programas que abren archivos FS
Detalles técnicos
especificación profunda| Lenguaje | F# - lenguaje .NET fuertemente tipado y orientado a la programación funcional desarrollado por Don Syme en Microsoft Research |
| Codificación | Texto UTF-8; BOM opcional; Visual Studio utiliza por defecto UTF-8 sin BOM |
| Compilador | `fsc` (compilador de F#); compila archivos `.fs` a .NET IL; se invoca mediante `dotnet build` en proyectos MSBuild |
| Orden de compilación | Los archivos deben enumerarse en el `.fsproj` de arriba hacia abajo; el orden es semánticamente significativo - no se permiten referencias hacia adelante |
| Versiones del lenguaje | La versión del lenguaje F# se establece mediante la propiedad `LangVersion` en el `.fsproj`; la actual es F# 9.0 (2024) |
| Paradigma | Orientado a la programación funcional (inmutable por defecto, coincidencia de patrones, uniones discriminadas, expresiones de computación) con soporte completo para OOP |
| Sistema de tipos | Inferencia de tipos Hindley-Milner; las anotaciones de tipo explícitas son opcionales en la mayoría de los contextos |
| Sistema de módulos | Declaraciones de `module` o `namespace` de nivel superior; no se permiten referencias circulares entre archivos |
| Extensiones complementarias | `.fsi` (archivo de interfaz/firma), `.fsx` (script), `.fsproj` (archivo de proyecto MSBuild) |
| Objetivos de ejecución | .NET 6+ en Windows, Linux, macOS; también JavaScript a través del transpilador Fable |
| Modo de scripting | Los archivos `.fsx` se ejecutan mediante `dotnet fsi` sin compilación explícita; los archivos `.fs` requieren un proyecto o la invocación directa de `fsc` |
| Soporte de IDE | Visual Studio 2022, Visual Studio Code con extensión Ionide, JetBrains Rider |
| Lanzado | 2005 (F# 1.0, Microsoft Research); Visual Studio integration since 2010 (VS 2010) |
| Última versión | F# 9.0 (2024) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | fsharp.org |
Conversiones de FS
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos FS.