Browsing CBS-beta specifications
To browse these CBS specifications, click the link for the preferred format in the following list:
- Sources
-
CBS text files on GitHub
- With line numbers (useful when reporting issues or suggesting improvements) but no highlighting or hyperlinks
- Navigation to related source files requires familiarity with the folder hierarchy
- Plain
-
Web pages with verbatim copies of source files
- Names are highlighted, and references are hyperlinked to declarations
- Links to related pages support navigation between specifications
- Pretty
-
Web pages displaying CBS with mathematical typography using KaTeX
- Names are highlighted, and name references are hyperlinked to declarations
- Links to related pages support navigation between specifications
-
Documents displaying CBS with mathematical typography using LaTeX
- Names are highlighted, and references are hyperlinked to declarations
- When browsing PDFs in a web browser, links to related pages are only in the navigation panel
On macOS (Catalina), the Preview app does not support hyperlinks to specific targets in PDF pages; similarly when browsing PDFs in Safari. Acrobat (Reader) and Firefox support hyperlinks in PDFs just as in web pages.
The plain and pretty web pages generated from CBS source files include links to the PDF documents, to each other, and to the source files on GitHub.
The Markdown and LaTeX files from which the web pages and PDFs were generated are available on GitHub (Plain sources, Pretty and PDF sources) together with the required CBS-LaTeX and CBS-KaTeX macro definitions and CSS. The Downloads page explains how to obtain a copy and serve the files locally.
Navigation
All references to names of funcons (etc.) in CBS specifications are hyperlinks leading to their declarations.
These hyperlinks avoid the need to drill down through the hierarchy of folders and files. Specifications in CBS are independent of the file system: all names declared in Funcons-beta are globally visible, and names declared in a particular language specification are local to that language, regardless of where the specification files are located.
The global Funcons-Index page lists the names of all current funcons, grouped by file. The local Funcons-Index page for a particular language lists only the names of the funcons actually used in its specification.
The Funcon Reuse page shows which of the languages in Languages-beta reference each funcon.
Hovering on a reference to a funcon displays the declared arity of symbol:
values
stands for a single argument, and values*
for any number of arguments.
Web pages
You can toggle the color scheme between light and dark using the button (☼ ☽) at the top of the navigation menu.
Browsing CBS specifications on this website is supported by direct links to related pages. Such links are shown in the navigation panel, and at the top or bottom of each page.
The navigation panel appears as a sidebar when the window width is sufficient. In narrower windows (or after zooming in) the sidebar disappears, but its contents can be displayed by clicking a button at the top right.
- Sibling pages
-
- The navigation panel shows links to all the sibling pages.
- The top right and bottom left of the page show links to the preceding and next sibling page as arrows.
- Parent pages
-
- The navigation panel shows links to all direct and indirect parental pages and their siblings.
- The breadcrumb list at the top of the page shows links to the direct and indirect parent pages.
- The top right and bottom left of the page show links to the direct parent page as arrows.
- Top pages
-
- The top of the page shows a link to the top-level parental page in the current format.
- Child pages
-
- The bottom of the page shows links to any child pages.
- Other formats
-
- The top of each generated page shows links to same page in alternative formats.
- Other pages
-
- The disclosure symbols in the navigation panel reveal links to all pages in all formats.
- Auxiliary pages
- The navigation panel always shows links to the following pages:
- Support pages
-
- The top right of each page shows a link to the CBS-beta repository on GitHub.
- The bottom of each page shows links to the PLanCompS project website, and links for reporting issues and suggesting improvements.