Skip to content

Add initial documentation in JSON format#4

Open
schoen wants to merge 2 commits intoBlockstreamResearch:masterfrom
schoen:initial-documentation
Open

Add initial documentation in JSON format#4
schoen wants to merge 2 commits intoBlockstreamResearch:masterfrom
schoen:initial-documentation

Conversation

@schoen
Copy link
Copy Markdown
Contributor

@schoen schoen commented May 1, 2026

As I mentioned on the call this morning, I made documentation for @stringhandler's initial standard library work.

This is based on #3 and adds some (also machine-generated, in this case from a Python script) documentation in the format of a JSON file. This corresponds to the format of elements.json in the existing SimplicityHL documentation environment.

The goal of this is to generate markdown for the docs site and also to import this in the LSP so that that the LSP can provide pop-up documentation for standard library functions.

Outstanding questions that we should address (either before or after merging this is OK with me):

(1) Should this routinely be autogenerated and should the Python script I wrote be checked into the repository? Should the standard library code itself also be autogenerated or should either or both of them be statically updated?

(2) Should it somehow reference the individual files within the standard library which @stringhandler has used in #3? E.g. types and assert? Should those be used as section names?

(3) This process showed me that #3 is missing assert_eq128 and eq_ctx8. There is also something weird with the newlines such that some forms of grep don't always work (do we need to normalize what kind of text file each .simf file is committed as or something)?

(4) What should we sort functions by in the documentation?

(5) Any reason that or and not are defined but and isn't?

(6) Any chance of getting the infix operators merged instead of defining or and not here at all? Many languages don't have separate functions for boolean operators that are defined via infix notations.

Sign up for free to 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.

2 participants