(std maths) has a reference page, and Part III a section on it

🤖 Generated with [ECA](https://eca.dev)

Co-Authored-By: eca-agent <git@eca.dev>
This commit is contained in:
Linus Björnstam 2026-10-06 20:09:22 +02:00
parent 319c9df63e
commit 371f1685ca
2 changed files with 8 additions and 0 deletions

View file

@ -7,6 +7,11 @@ A short tour of the standard library. Each module's full reference is its own pa
The prelude is what every module has without importing anything: the collections and their functions, strings and characters, files and ports, Concurrent ML and scopes, and the macros the language is written with, such as @code{cond}, @code{if-let} and @code{type/derive}. Its reference also covers the builtins, the functions compiled into the runtime rather than written in Bjolang, since every program gets them with the prelude. At the REPL, @code{:show name} prints the same documentation.
For more details, see @link["modules/std/prelude.html"]{@code{(std prelude)}}.
@subsection{std/maths}
Numbers beyond the operators. Integer division has Racket's names: @code{quotient} and @code{remainder} are what @code{/} and @code{%} do, and @code{modulo} takes the sign of the divisor, so @code{(modulo -1 10)} is 9. There are @code{gcd}, @code{lcm}, an integer @code{expt} and an exact @code{integer-sqrt} at every integer type, the @code{exact-} roundings from a double to an int, and the rest of @code{System.Math} over doubles. The prelude has @code{abs}, @code{min}, @code{max} and @code{clamp} from here without an import.
For more details, see @link["modules/std/maths.html"]{@code{(std maths)}}.
@subsection{std/fmt}
Formatting in Bjolang is divided into two layers: interpolation and layout.

3
modules/std/maths.sz Normal file
View file

@ -0,0 +1,3 @@
(meta (title "(std maths)"))
@generate-docs[#:module "std maths"]