+++ /dev/null
-$$$;$X#X$;$$$;;;$;;;$X#X$:::$X#X$;;;$$X$$:::$$X$$$$$$$$$$;;;$$$;$X#X$:::$X#X$;;;$$$$$;;;$$X$$$X$
-;$;;;$X$;;$$$;;$$$;;$X##X$:;$X##X$$$$$$$;::;$X$;;;;$$$;;;;;$XX$;$XXX$:.:;$X$;:::::;;;;::;$$$$$XX
-;;;:;$X$$;$$$;$$$;;$XX###X$$XX###XXXX$;;;;;;$$$$$;;;$;;;$$XX##X$$$X$$;;;$$$$$;::::;;$;::;;$;$$XX
-;;;:;$$$$$$;;;$$;:;$$XXXXX$$$XXXXXXX$;::;$$$;;$X$;;;;;;;$XXXXXX$$;$$$;$$$;;$$$;:::;$$$;:;$;:;$$$
-$$$;$$X$$$$$$$X$$;;;$$$$$$$$$$$$$$X$$:::$X#X$;$$$;;;$;;;$$X$$$X$$;$$$;$$$;;;$$$$$$$$$;;;$$$;$$$;
-XX$$$XX;;;;$$$XX$;:::::;;;;;;;;;;;$$;::$X#@#X$$$;:;$$$::;$$;:;$$$;$$$;$$;::;;;$XX$$;::::;$$$$$;:
-##X$XX#$$;;;$$X$$;:.::::;;;:;;;;$$$;;;$X##@##X$$$;;;$$;:;;$:::;$X$$$XXXX$;;;$$X##X$::.::;;;;$;::
-X$;;$X#X$;::;$$;;::::;;;;$;;;$$;$$;:;$$XXXXXX$$;$$;:;;;;;$X$::;$$$$$$X#X$;;$$$XXX$$;:::;;:;;;:.:
-$;;;$X#X$:::$$X$$;;;$$$;$$$;$$$;$$$;$$X$$$$$$;;;$$$;$$$;$X#X$;;;$;;;$X#X$;;;$$X$$;$$$;$$$;$$$:::
-;::;$XX$;::;$XX$$$$$XX$;$$$;$$;::;$$XX$;:::::::::;;$$X$;;$##X$;;;;::;$$;::::;;$$;;$XX$XX$$$X$;:;
-;:;$XX$;;:;;XXX;$$XX##X$XXX$X$;:::$X##$::...:::.::;;XXX;;;$X#XX$$;::;;;::.::;;$$$;$X####X$;;$;$$
-;:;$$$;;;$;;$$;;;$XXXXX$$$$$$$;::;$$XX$;::..:;;::::;$XX$;::$XXX$$$;:;$;::;;;;$X$$$$$X##X$;::;$$$
-$;;;$;;;$$$;$$$;$$X$$$$$$$$$$$$$$$$$$$$$$;;;$$X$$;;;$X#X$:::$$X$$;;;$$$;$$$;$$X$$;;;$X#X$:::$$X$
-$;:;;::;$$;;;$$$$X$;;;:::::::;$$X$$;::;$$$$$$XXXX$;;;$#X$;::;$$;:::;$$$$$X$;$$$;;;:::$X$;::;XXX;
-X$$;;:;;$;;:;;;$XX$;;;:.:::.::$X#X$::::;$$XXXX###X;:;;XXX;::;;$::.:$XX$;$$;;$$X$$;:.::$;;::$###$
-$$X$;;;$$;::;;:;$$$;;$;::;:::;$XX$$;::::;$XX$;$XX$;:;;$X$;::;$X$:::$$$$;;;:;$$X$$$;::;$$;::;X##$
-$$X$$;$$$;;;$;;;$$$;$$$;$$$;$$X$$$$$$;;;$X#X$;$$$;;;$$X$$:::$X#X$;;;$$$$$;;;$$X$$$$$$$X$$:::$X#X
-;;$$;;$$$;;$$$;:;$;;;$$$$X$$XX$;::;$$$;;$XX$;;;;;:;$XXX$;:.:;$##X$;;;;;$$$;;$$$;::;$$$XX$;::;$XX
-$;;;;;$XX$XXX$;:;;::;$XXX$XX##$::::;$$$$$$$;;:::;;X##XX$;:::;;$X#XX;;:;$$;;;$;;::::;$$XXX$$$$$XX
-$$;:;$$X$XXX$;::;:::;$XX$;;$XX$;::::;$X$;:::;:::;$##X$$;;::;;::$X##$;;;;;:;$$;::::::;$;;$X#X$;$$
-$;;;$$X$$$X$$;;;$;;;$X#X$;;;$$$$$;;;$X#X$;;;$;;;$X#X$;$$$;$$$:::$X#X$;$$$;$$$;;;$;;;$$$;$X#X$;;;
-:::$XXX;;;$$;;;$$$$$$X#X$;::;;$$X$$;$X#X$;;$$$;;$XX$;:$X$$XXX;:.:$XX$;$X$;$$$;;$X$;;$X$;$XX$;:::
-:.:$###$$;;;;;$XX$$$XX#XX;::;;$X##X$$$$$$;$$XXX$XX$;;;$$XX###$:.::$XX$X$$;$$$;$X#X$;$$X$XX#X$:..
-:.:;X#X$$$;:;$XX$;$$$;$X$;::;$$$X##$;:.:;;;;$XXX$$;;;$$;$X##X$:::;$$$$X$;:;$$;;$X$;:;$X$$XXX$;..
-$:::$$X$$;;;$X#X$;$$$;$$$:::$$$;$X#X$:::$$$;$$X$$;;;$$$;$X#X$;;;$$$$$$X$$;$$$;;;$;;;$$X$$$X$$:::
-$;::;$$;::;$X##$;;$$$;;$;:.:;$;;;$XX$;;$XX$;$$$;::::;$$;$XX;:::$$$;::;$X$$$$$:::;;:;$X$;;;;;:..;
-X;;;$$$::.;$##X;;;$XX$$$$;::;$$$$$$$$;$$###$XX$::..:;;$$XX$::::;$$;.:;XXX$$$$:::;;;;$$$:;;;::.::
-$;;$$$$;::;$X$;:;$$X$$$$$$::;$XX$;::;$$$X#XX$X$;:..:;;$$$$;::;;:;;;::$XX$;$$$:.:;$;:;$;;;$;::;::
-$;;;$$X$$;;;$;;;$$X$$$$$$;;;$X#X$:::$$$;$$X$$$X$$;;;$$$$$;;;$$$;$$$;$X#X$;$$$:::$$$;$$$;$$$;$$$;
-;:::;;$XX$;:::;$XXX;::;;;;;$$XX$:.:;XX$;;$$;;;XXX$$$$$;;;;;;$X$;$X$$$X#X$;$$$;:;$$$$XX$;$$$$$X$$
-;::;;:$X#X$:::;X##X;:.;$$;$$X$$::.:$###$$$$$$$X##XXXX$;:;;;;$$;;$$$;$X#XX$$$X$$$XXXX##X$XX$;$$XX
-;:;$;::$XX$;:;;$XXX;::;$$$$$$;:::::$X##X$;;$$$XXXXXX$;::;$$;;;::;$;:;$XX$$$$$XXX$$XXXXX$$$$;;;$$
-$;$$$:::$$X$$$$$$$X$$;$$$;$$$;;;$;;;$X#X$;;;$$$$$$X$$:::$$X$$;;;$$$;$$X$$;;;$$X$$$$$$$$$$$$$$$$$
-$$$$$;..:;$$$$;;:;$X$;;;;:;$$;;$$$;:;$X$;::;;;;;;;$$$;:;$XX$$$;;$XX$XXX;::.:;$$;;;;;;;:::;;$$$;;
-XXXXX$:.::;;$$;:::;$$;;:;;$XX$$$$;;;$$X$$;;;$;;;$$$$$;$$XXX$$;;;$$XX##X;:...;$$$$;;:;;:.::$$$;;;
-$XXX$$;:::::;$$;::;;;;::;$XX$$$$;:;$$$$X$;;$$$;;$X$;$$X$$$$;;;::;$XXXXX;:..:;$X$$$;:;$;::;$$;:;$
-$$X$$$$$$;;;$$X$$$$$$;;;$$X$$$X$$;$$$;$$$;;;$;;;$$$;$$X$$$$$$;;;$$X$$$X$$:::$$X$$;;;$$$;$X#X$;$$
-;$$;::;$$$;;$XX$$$$$$$;;$$$;:;$X$;$$;::;:::;;;:::;;;;$;;:;;$$$$$XXX;;;$XX$:;$X$;;;::;$$$X##X$;$$
-;;;::::;$$$$$;;;$$X$$;;;$;;:::;$$;$$$::.::;;$;:.::;;;::.::;;$$XX##X;;;$X#X$$XXX$$;::;$XX###X$;$$
-;;;;::::;$X$;:.:;$X$;:;$$;;;::;;;:$X$;..:;$$$$;::;;;;:..:;;:;$XXXXX$;;;$XX$$$$$$$$::;$XXXXX$;:;$
-$$X$$;;;$X#X$:::$X#X$;$$$;$$$;$$$;$$$:::$$X$$$$$$$X$$:::$$$;$$X$$$X$$;;;$$$$$$$$$;;;$$X$$$X$$;$$
-$XX$$$;;$X#X$;;;$X#X$;$$$;$X$$XXX$;;:.:;$X$;::;$XX#X$;;$XX$$$X$;;;$$$:::::;;;;;;;;;$XX$;;;XX$$$$
-XXX$$;;;$$X$$$$$$$X$$;$XX$$$$$X##$;::::;$$$::.;X####X$$X##X$XX$;;;X$$::.::;;;:;;$$$X#X$;;;XXX$;;
-$X$;;;::;$;;;$X$;;;$;:;$$$$;;;XXX;:::;;;;;$;::;$XXXX$;;$X$;;$$$;;$XX$::::;$$;:;$$$$XX$;;;$XX$;:;
-$$X$$;;;$$$;$X#X$;$$$;;;$$$$$$X$$:::$$X$$$X$$;;;$$X$$;;;$;;;$$$;$X#X$;;;$$X$$;;;$$$$$;;;$X#X$:::
-$XXX$$;;$X$$X##X$$$X$;;;;;$$$$$$;:.;$XX$$$XX$;:::;$$$;::;:::;$;;;$X$$;;$XXXX$;:;;;;;;:::;$XX$;::
-XXX$XX$;$$XX###$$$$$$$$$$$$$$;$;;::;$$X$$;$$$;::::$XX$;:;;;:;;::;$$$$$$X###XX$$;$$$;;:..;$XXX$;;
-$$;;$$;:;$$$XX$;;;;:;$$$$$$$;:;$;::;;;$$;::;;;;::;;$$$;:;$$;;:::;;;;$$$$X##X$$$$$$X$;:..;$XX$$;;
+++ /dev/null
-#load "core/std"
-#load "modules/perlin/module"
-
-use package core
-perlin :: package perlin
-
-char_map :: (x: f64) -> u8 {
- switch cast(i32) math.floor(x) {
- case 0 do return #char " ";
- case 1 do return #char ".";
- case 2 do return #char ":";
- case 3 do return #char ";";
- case 4 do return #char "$";
- case 5 do return #char "X";
- case 6 do return #char "#";
- case 7 do return #char "@";
- case #default do return #char " ";
- }
-}
-
-main :: (args) => {
- for y: 48 {
- for x: 96 {
- fx := cast(f64) x;
- fy := cast(f64) y;
- n := perlin.noise(fx / 4, fy / 4, 0);
- char_map(n * 4 + 4) |> print();
- }
- print("\n");
- }
-}
-