From 19ba625e0345a88da6c29ab91a3ba2d7a8462065 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Sun, 12 Jul 2026 18:43:23 -0300 Subject: lsp gains hover, definition and completion from a text-level symbol scan --- examples/#family.sol# | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 examples/#family.sol# (limited to 'examples') diff --git a/examples/#family.sol# b/examples/#family.sol# new file mode 100644 index 0000000..200b0af --- /dev/null +++ b/examples/#family.sol# @@ -0,0 +1,29 @@ +% Relations, facts, rules, joins and negation. + +Relation named: Person schema: #( + [name domain: String] + [age domain: Integer] +) + +[Person name: "Marcos" age: 30] +[Person name: "Ana" age: 12] +[Person name: "Rui" age: 70] + +Rule name: "an adult is a person of age at least 18" + head: [Adult name: N] + body: [Person name: N age: A] :and + [GreaterEqual left: A right: 18] + +% Everyone stored. +Query expression: [Person name: N age: A] + +% The rule, joined through the shared variable N. +Query expression: [Adult name: N] + +% Decidable denial: people who are not adults. +Query expression: ([Person name: N age: A]) :not [Adult name: N] + +% The specification's negation form, scoped by the universe. +Query expression: [World] :not [Adult name: "Ana"] + +World \ No newline at end of file -- cgit v1.2.3