Skip to content

docs(help): document the 3.8.0 builtins, shadowing, and two fixes - #203

Merged
ddehilster merged 1 commit into
VisualText:mainfrom
ddehilster:docs/nlppp-builtins-3.8.0
Aug 3, 2026
Merged

docs(help): document the 3.8.0 builtins, shadowing, and two fixes#203
ddehilster merged 1 commit into
VisualText:mainfrom
ddehilster:docs/nlppp-builtins-3.8.0

Conversation

@ddehilster

Copy link
Copy Markdown
Member

Help documentation for engine 3.8.0 — VisualText/nlp-engine #704 – #709, all merged.

14 new function pages

grouppages
File readingreadfile, readlines, dirlist
Regular expressionsrematch, refind, resubst
Stringsstrjoin, strindexof, strlastindexof
Arraysarraysort, arrayunique, arrayreverse, arrayslice

Corrections to existing pages

  • push.md was documented as UNIMPLEMENTED. It now works, and the page carries the real signature push(value, array) — value first, matching the hand-written push() long present in visualText/spec/UtilFuncs.nlp.
  • Table_of_Array_Functions.md held exactly one row: the unimplemented push. It now lists the whole array family and explains how to test for an empty result — assigning an empty array collapses it to no value and arraylength reports 1 for that, so a loop must be guarded on the first element rather than the count.
  • DECL.md — a user function may now shadow a builtin of the same name, with the warning it emits.
  • regexp.md / regexpi.md — cross-referenced to the real regex functions, and the whole-token matching rule is now documented: regexp("run") does not match running, and regexp("at") does not match cat. That was undocumented and easy to trip over.

Table_of_File_Functions, Table_of_String_Functions and index.md pick up the new entries. New_in_Current_Version records the three 3.8.0 items.

All internal links in the new and edited pages were checked to resolve.

🤖 Generated with Claude Code

Fourteen new function pages, plus the table, index and behavior updates
that go with the 3.8.0 engine work.
New pages
readfile, readlines, dirlist
rematch, refind, resubst
strjoin, strindexof, strlastindexof
arraysort, arrayunique, arrayreverse, arrayslice
Rewritten
push.md -- was documented as UNIMPLEMENTED. Corrected to the real
signature, push(value, array), matching the hand-written push() in
visualText/spec/UtilFuncs.nlp.
Table_of_Array_Functions.md -- the page held a single row, the
unimplemented push. Now lists the whole array family, and explains
how to test for an empty result: assigning an empty array collapses
it to no value and arraylength reports 1 for that, so a loop must be
guarded on the first element rather than on the count.
DECL.md -- a user function may now shadow a builtin of the same name.
regexp.md, regexpi.md -- cross-referenced to the real regular
expression functions, and the whole-token matching rule is now
written down: regexp("run") does NOT match "running". That was
undocumented and is an easy trap.
Table_of_File_Functions, Table_of_String_Functions and index.md pick up
the new entries. New_in_Current_Version records the three 3.8.0 items:
the new builtins, user functions shadowing builtins, and the str() fix
for negative numbers.
Engine side: VisualText/nlp-engine PRs #704 through #708.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@ddehilster
ddehilster merged commit 0230fd1 into VisualText:mainAug 3, 2026
1 check passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@ddehilster