Change terminology. Sketch out Draft Function

This commit is contained in:
Yura Dupyn 2026-02-14 00:14:15 +01:00
parent 6a0f95812a
commit 0941756bf9
8 changed files with 172 additions and 55 deletions

53
src/ui/Scrowl.tsx Normal file
View file

@ -0,0 +1,53 @@
import { For, Match, Switch } from "solid-js";
import { ExprREPL } from "./REPL";
import { scrowl } from "./scrowlStore";
import { FunctionDigith, NewFunctionDraftDigith } from "./Function";
import { Digith } from "./Digith";
// WTF are these names?
// Scrowl
// - thining about "scrawling", "howl", "crows", "owls", "nests", "scrolling", "soul", "crawling"
// Digith
// - thinking about fingers/digits. Hand is an object to think with (counting).
// - Thinking of a prosthesis that's an extension of your body doing your bidding without you knowing exactly how.
// - digital
type Props = {
// TODO
}
export function Scrowl(props: Props) {
return (
<div
id="scrowl"
style={{
display: "flex",
"flex-direction": "column",
gap: "1.5rem",
}}
>
<For each={scrowl.digiths}>
{(digith) => (
<Switch>
<Match when={digith.tag === 'repl'}>
<article class="digith">
<header><strong>REPL</strong></header>
<ExprREPL />
</article>
</Match>
<Match when={digith.tag === 'new-fn-draft'}>
<NewFunctionDraftDigith draft={digith as Digith.NewFunctionDraft} />
</Match>
<Match when={digith.tag === 'fn'}>
<FunctionDigith function={digith as Digith.Function} />
</Match>
</Switch>
)}
</For>
</div>
);
}