Idea detail
code_snippets
reqlan rq/language/syntax.rq:206
Summary
Idea bodies and block attribute values may embed fenced code blocks delimited by triple backticks.
An opening fence is three backticks on a line, optionally followed by a language tag such as python or rq.
A closing fence is three backticks on a line.
Everything between the fences is literal opaque text — it is not parsed as reqlan syntax.
Keywords, imports, attributes, braces, and quotes inside a fence are inert for the parser and may be shown as examples without parse errors.
Fenced blocks may span multiple lines and preserve their inner content verbatim.
Brace-depth tracking must skip fence interiors so example braces cannot desync surrounding structure ( no_name_idea_safe_warning ).
Attributes
Ancestor context
A top-level nameless curly-brace block — `{... }` with no idea name — must not take down the parser or the language server workspace. Parse the block as a recoverable anonymous top-level element, emit a descriptive warning that a name is required before `{`, and continue so later ideas, imports, and links still work. Nameless blocks inside parenthesized lists remain valid list items per [lists]; only top-level nameless blocks warn. Related recovery posture: ["./imports.rq".import_error_recovery]. Block shape: [block_idea]. Fenced examples must stay opaque per [code_snippets] so braces inside snippets cannot desync structural depth. Non-termination ( lex / parse never finishes ) is a different failure mode: ["./parser_lexer.rq".parse_budget_timeout].
listsParenthesized lists contain newline-separated items. Each list item is either a one-liner or a nameless block idea in curly braces. Lists may appear as attribute values and inside block bodies. Named lists use a label followed by a parenthesized item list; the opening parenthesis must be followed by a newline before the first item. Nested lists may appear inside block values or as list items; the opening parenthesis must be followed by a newline before the first item. Inline parentheses in body prose — for example continuous ( " live " ) physics or ( pixelRatio 1, no WebGL ) — are plain text, not lists.
block_ideaA block idea is written as a name followed by curly braces containing a body and optional attributes. The first unstructured text in an idea body is the main description when no other body attribute is marked.
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| references | no_name_idea_safe_warning | reqlan rq/language/syntax.rq | code_snippets |
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| None | |||
Initialising graph…