Repository navigation
HTN Planner 2.1.0
This release adds runtime list expressions, clearer callterm diagnostics, a domain
language guide, and smaller generated C through implementation sharing, reachability
analysis and optional instrumentation.
Highlights
- Runtime lists: use bound variables, arithmetic, callterms and nested lists as
owned values in callterm arguments, assignments, facts, axioms and tasks, including
deferred arguments. - Clearer condition errors: a standalone callterm must return a boolean.
Non-boolean results reportNonBooleanConditionResultthrough the configured
error policy; booleanfalseremains an ordinary condition failure. - Smaller generated source: qualified aliases share implementations and unused
code is removed while retaining every public top-level method and deferred entry. - Translator controls:
--instrumentation=full|noneselects optional debugger
and profiling emission;--code-statsreports generated source size by category. - Language documentation: a complete tutorial and reference is included in the
repository and SDK.
In the measured Wanderer workload and its include, sharing and reachability reduced
full output from 22,055 to 9,859 lines and none output from 13,963 to 6,239 lines
(about 55%). These are source-size results for one workload, not a runtime speedup.
Compatibility
The C runtime ABI, RuntimeBridge ABI and HTNAtom layout are unchanged from 2.0.4.
Use matching CRT/instrumentation variants. Regenerate and recompile domains to use
the new features and reductions. Rebuild clients of the extended C++ compiler APIs
and update exhaustive error-reason switches for NonBooleanConditionResult.
full remains the default. none omits generated debugger/profiling output while
retaining validation, ownership, runtime errors and source locations. It does not
strip author-written debug callterms.
Validation and platform
- Windows x64 / Visual Studio 2022, MSVC v143.
- Complete source suites: 335 Debug, 326 Profile and 326 Release tests passed.
- Eight SDK variants, 24 external consumer executions and eight object/export checks.
- Allocation and hot reload pipeline self-tests passed; invalid CRT/variant selections rejected.
- The client reported successful engine integration smoke testing.
- Final documentation packaging preserved the validated binaries, headers and examples.
Native Linux validation and comparative performance profiling remain pending.
Hot reload requires client-owned loading, lifetime management and synchronization.
The project remains under active development.
Download
HTNSDK-2.1.0-windows-x86_64.zipHTNSDK-2.1.0-windows-x86_64.zip.sha256
SHA-256:
8ab1f66e957404e5e980aa0969a371584171f3981c2b3ac3ec83f70e6bf1d6ea