Select a file to view its exact on-chain source. Sorted README → gnomod → sources → tests.
Generate(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, pattern string, size int) string
Render(path string) string
RenderChecker(n int) string
RenderDiamond(n int) string
RenderPyramid(n int) string
RenderSierpinski(n int) string
Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.
# ASCII Art Generator
Four deterministic patterns, no font table required -- each shape falls out of a short formula over row/column indices. Pick a pattern and a size (1-32, sierpinski wants a power of two) and `Generate` adds it to the gallery below.
## Patterns
- `diamond` -- filled diamond, half-width `size`
- `pyramid` -- solid triangle, `size` rows tall
- `sierpinski` -- Sierpinski gasket in an n×n grid (`row & col == 0`), `size` a power of two
- `checker` -- n×n checkerboard
Call `Generate(pattern, size)`. View a piece at this realm's path plus its ID (e.g. `.../asciiart:3`).
## Gallery (total: 3)
### #3 -- diamond (size 16)
by `g1manfred47kzduec920z88wfr64ylksmdcedlf5` at block 26030
```
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
*********************
***********************
*************************
***************************
*****************************
*******************************
*****************************
***************************
*************************
***********************
*********************
*******************
*****************
***************
*************
***********
*********
*******
*****
***
*
```
### #2 -- checker (size 16)
by `g1manfred47kzduec920z88wfr64ylksmdcedlf5` at block 26026
```
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#
```
### #1 -- sierpinski (size 16)
by `g1manfred47kzduec920z88wfr64ylksmdcedlf5` at block 26021
```
################
# # # # # # # #
## ## ## ##
# # # #
#### ####
# # # #
## ##
# #
########
# # # #
## ##
# #
####
# #
##
#
```
vm/qrender output, sanitized (docs/render-security.md) and displayed in an empty-sandbox iframe — scripts, forms and popups cannot run. Links stay inert in-preview; right-click to open.