+ createEffect(() => {
+ const newState = {
+ value: undefined,
+ error: undefined,
+ trace: [] as readonly Edge[]
+ };
+ try {
+ Trace.reset();
+ newState.value = line.value(tr);
+ } catch (e) {
+ newState.error = e;
+ }
+ newState.trace = Trace.getLastTraceList();
+ setState(newState);
+ });
+
+ const valueDisplay = createMemo(() => {
+ if (state.error) {
+ return <span class={S.error} title={state.error.stack}>{state.error.message}</span>;
+ }
+ return JSON.stringify(state.value, null, 1);
+ });