On this page

Curated 2.0 common API paths

This is the small choice map for ordinary applications. The exhaustive declaration contract remains the generated API_REFERENCE_1.9.md; classification is a documentation decision and does not hide or remove advanced declarations.

Every example below is a complete, output-checked Pascal program. Release qualification compiles and runs the selected program from each document and rejects any common example that names a declaration classified as generic implementation support.

Domain Recommended common path Checked example Full contract / advanced route
MathBase TTrigKit and double-real MathBase.Precision functions MathBase quick start MathBase guide
AlgebraLib TDenseDoubleMatrix + double-real Solve 60-second dense solve Dense solver selection and sparse guide
FinanceLib TFinanceKit Finance quick start Finance guide
StatsLib TStatsKit with TDoubleArray Statistics quick start Statistics guide
EngineeringLib calculation-specific static kits Engineering quick start Engineering guide
NumericsLib TNumericsKit Numerics quick start Numerics guide and modelling guide
ProbabilityLib TProbabilityKit Probability quick start Probability guide
CombinatoricsLib TCombinatoricsKit Combinatorics quick start Combinatorics guide
OptimizationLib TOptimizationKit.GoldenSection Optimisation quick start Optimisation guide and convex guide
TimeSeriesLib TTimeSeriesKit with TDoubleArray Time-series quick start Time-series guide
MLLib TMLKit.LinearRegression Machine-learning quick start Machine-learning guide
InterchangeLib double-real SaveBinary / LoadDoubleMatrixBinary 60-second round trip Interchange guide
GeometryLib TVector2D value arithmetic Geometry quick start Geometry guide

What the five classifications mean

  • recommended is part of one or more common paths above.
  • advanced is stable application API for callers who need more precision, scalar kinds, diagnostics, workspaces, storage formats, or specialist algorithms.
  • compatibility remains supported and has either a named replacement with a semantic-difference note or an explicit retain decision.
  • experimental is outside the stable compatibility promise. The current snapshot has no declarations in this class.
  • implementation is public only because Free Pascal specialization needs it. Applications use the corresponding named scalar facade.

The exact selectors behind this map are in api-decision-2.0.json. The generator expands those selectors to all 2,880 owner/signature-aware declaration rows, so overloads are not collapsed by name.

Review outcome

The short programs confirm that ordinary double-real work does not need a new wrapper in 1.9.x. Geometry rotation is the one common convenience routed to 1.10.0: the 1.9.9 convergence gate closed 2-D TVector2D.Rotate as a 1.10.0 declaration with a complete contract, and explicitly deferred 3-D rotation beyond 2.0 until axis-angle, quaternion, or matrix semantics and orientation, units, normalization, and error behavior are designed. No public name or declaration is introduced by this decision release; see the closed manifest.