Fortran
The guide to Fortran.
- Overview and historyThe language node, its design goals, history, editions and releases, implementations.
- Getting startedInstall, toolchain, hello world, the REPL, running a program, project layout.
- Lexical structure and syntaxTokens, comments, identifiers, literals, operators and precedence, statements and expressions, the grammar.
- Values and typesThe built-in types, numbers, text, booleans, null and its friends, type conversions, the type system of the language.
- Variables, binding and scopeDeclarations, constants, scope rules, shadowing, lifetime.
- Control flowConditionals, loops, pattern matching, jumps, labelled blocks.
- FunctionsDefinitions, parameters, returns, closures, recursion, lambdas, overloading.
- Built-in collectionsArrays, lists, maps, sets, tuples, slices, ranges, iteration protocols, comprehensions.
- Strings and textString types, encodings, formatting and interpolation, regex support, Unicode handling.
- User-defined typesStructs, records, classes, enums, unions, interfaces, traits, protocols, generics.
- Errors and exceptionsThe error model, the exception hierarchy, error values, panics, cleanup.
- Memory and resourcesAllocation, the GC or ownership model, destructors, resource handling, unsafe code.
- Modules, packages and buildsThe module system, imports, visibility, packages, the package manager, the build tool, publishing.
- Concurrency and parallelismThreads, async, channels, the memory model of the language, synchronization in its stdlib.
- MetaprogrammingMacros, reflection, annotations, decorators, code generation, compile-time evaluation.
- The standard libraryA map of the standard library; the api cards hang here (one api group per module or package).
- I/O, files and the OSFiles, paths, processes, environment, time, networking from the stdlib.
- TestingThe test frameworks, assertions, mocking, test runners and conventions.
- ToolingCompilers and interpreters, debuggers, profilers, linters, formatters, LSP, notebooks.
- EcosystemThe main libraries and frameworks by need, the community, the governance and proposal process.
- PerformanceThe cost model, optimization guidance, the profiling workflow, the compilation and runtime knobs.
- InteroperabilityFFI, calling C, embedding, the ABI, interop with the platform languages.
- Idioms and styleThe style guide, the idioms, what code in this language should look like, naming conventions.
- PitfallsThe known traps, each as a feature or a short node, linked to diagnostics and weaknesses.
- Versions and migrationThe release nodes, the migration guides between major versions, deprecations and removals.
This area has no pages yet. The coverage plan lists the pages that it needs. You can write one of them. Read how to contribute.