import { Bind, BindTo, Do, Kind1, Label } from '../stdlib/effect' import { PutStringLn } from '../stdlib/stdio' import { ReadFile } from '../stdlib/fs' import { Try } from '../stdlib/exception' interface PrintK extends Kind1 { return: PutStringLn } export type main = [ Do<[ BindTo<"contents", ReadFile<'./bin.js'>>, PutStringLn<"------">, Bind, () => PutStringLn>, ]>, Try, PrintK>, () => PutStringLn<`ERROR: ${e}`>>, PutStringLn<"-------------">, Bind, () => PutStringLn>, PutStringLn<"-------------">, Try< Bind, PrintK>, () => PutStringLn<`ERROR: ${M}`> > ]