The homepage: the logotype, one example, and the manual as a submodule

index.sz shows the logotype, says in a sentence what Bjolang is, shows a
short program (a union, an exhaustive match, a loop), and links to the
manual and its library reference. It has no menu: (listing? #f).

manual/ is BjoManual as a git submodule, served as a folder of the site.
_resources/glasnost.css centres the logotype and keeps it to the column.
glasnost's page cache is ignored.

🤖 Generated with [ECA](https://eca.dev) (anthropic/claude-opus-5-5)

Co-Authored-By: eca-agent <git@eca.dev>
This commit is contained in:
Linus Björnstam 2026-10-01 18:38:11 +02:00
parent 93edd3426a
commit a04efb4111
6 changed files with 37 additions and 0 deletions

29
index.sz Normal file
View file

@ -0,0 +1,29 @@
(meta (title "Bjolang")
(listing? #f))
@div["logo"]{@image["/_resources/logo.svg" #:alt "Bjolang"]}
Bjolang is a Lisp for .NET. It has types that are inferred, unions that are
matched exhaustively, traits, hygienic macros, and bjoroutines, and it
compiles to C#.
@codeblock[#:lang "bjolang"]|{
(import (std prelude))
(type (: Shape (Union (: Circle double)
(: Rect double double))))
(: area (-> Shape double))
(defun (area shape)
(match shape
((Circle r) (* 3.14159 (* r r)))
((Rect w h) (* w h))))
(defun (main args)
(loop (:for s [(Circle 1.0) (Rect 2.0 3.0)])
(:do (println #"area: ${(area s)}")))
0)
}|
@link["manual/"]{Read the manual}, or go straight to the
@link["manual/modules/"]{library reference}.