Programming foundations for scientific work.
The capabilities below come from the current Language V1 specification, package manifests, and retained qualification evidence. Future objectives are not presented as shipped features.
Programming language
SS is not a solver-specific input format. It is a general-purpose language with explicit projects, libraries, diagnostics, interoperability, and multiple execution paths.
Checked language core
Static analysis, checked integral and decimal arithmetic, finite-result checks, bounds diagnostics, nominal types, generics, functions, modules, and explicit imports.
Data and resources
Arrays, views, collections, UTF-8 text and binary files, typed JSON, bounded TCP facilities, exceptions, and deterministic using scopes.
Testing and diagnostics
SS-native test cases and fixtures, numerical tolerances, recursive test discovery, JUnit output, coverage data, and stable compiler/runtime diagnostic codes.
Projects and tooling
CLI check, run, build, test, package, and REPL workflows plus compiler-backed language services for Visual Studio and VS Code integrations.
Scientific and engineering computing
Tested features are delivered through the language and its packages, with clear diagnostics and convergence information when an operation cannot complete.
Quantities and dimensions
Dimensioned literals, custom units, affine temperatures, conversions, and compile-time dimensional checks are part of Language V1.
Numerical foundations
Tested packages cover linear algebra, numerical methods, statistics, optimization, automatic differentiation, and convergence diagnostics.
Engineering domains
Packages include geometry, meshing, FEM, heat transfer, fluids, CFD, electromagnetics, mechanics, and multiphysics tools.
Inspectable execution
Parallel, accelerated, and GPU-aware paths report the actual selected mode, device, fallback, and relevant diagnostics.
Tooling that shares compiler truth
Completion, hover, signature help, navigation, formatting, diagnostics, package discovery, and source debugging are driven by maintained compiler and project contracts. The browser Lab uses the production compiler and interpreter through a local WebAssembly worker rather than a JavaScript imitation.
Evidence boundary
Performance depends on the program, data, computer, device, and reproducibility settings. SS reports which execution path and device it actually used.