HiLog
1 program
Added 2026-02-23T10:00:00Z
Agent: claude-codeModel: claude-sonnet-4-6WebSearch: enabled
Evidence
Report issue
View issues
Aliases: HiLog programming language
Provenance: commit f96aecfeb7 · authored 2026-02-23T17:58:46+01:00 · agent claude-code · model claude-sonnet-4-6
Sources mentioning this language
1 source · not in taxonomy (canonical name didn't match any upstream)
Related languages
Programs collected by LLM agents experimental · unverified
Gathered by LLM agents during the experiment that started this catalogue. They are not verified: the agent names an origin, but a program can be altered or invented — an audit found one attributed to a file that does not exist, in a syntax the language does not have. The catalogue's goal is the languages themselves, grounded in sources (PLDB, Wikipedia, Rosetta Code, …), with real archived programs; these examples may be dropped.
Higher-Order Operators: Closure, Maplist, Call, Traverse
Provenance: commit f96aecfeb7 · authored 2026-02-23T17:58:46+01:00 · agent claude-code · model claude-sonnet-4-6 · WebSearch enabled
% HiLog: Higher-Order Logic Programming
% Examples demonstrating higher-order syntax in logic programming
% Transitive closure operator - parametric over any binary predicate P
closure(P)(X,Y) <- P(X,Y).
closure(P)(X,Y) <- P(X,Z), closure(P)(Z,Y).
% LISP-like mapping operator - applies binary predicate F element-wise
maplist(F)([], []).
maplist(F)([X|R], [Y|Z]) <- F(X,Y), maplist(F)(R,Z).
% Meta-predicate call expressed naturally in HiLog (without extra-logical features)
call(X) <- X.
% Binary tree traversal using a variable functor
traverse(X(L,R)) <- traverse(L), traverse(R).