From 9842f84ecd47011149c928287e63fb5de399e161 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 5 Jan 2023 18:49:34 +0530 Subject: feat: js expr in types now. aaaa. kill me pliz --- src/index.ts | 22 +++++++++++++++++----- src/runtime.ts | 37 +++++++++++++++++++++++++++++++++++-- 2 files changed, 52 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/index.ts b/src/index.ts index f7e00b7..6097752 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,13 +3,17 @@ export type Effect = EffectAtom[] export interface PrintString<_ extends string> extends EffectAtom { } export interface Print<_ extends any> extends EffectAtom { } -// interface Debug<_ extends string, T> extends EffectAtom { } +export interface Debug<_ extends string, T> extends EffectAtom { } export interface WriteFile<_Path extends string, _Content extends string> extends EffectAtom { } export interface ReadFile<_Path extends string> extends EffectAtom { } export interface GetEnv<_Name extends string> extends EffectAtom { } +export interface ReadLine extends EffectAtom { } + +export interface JsExpr<_Expr extends string> extends EffectAtom {} + export interface Program { effects: Effs, exitCode: ExitCode, @@ -25,13 +29,21 @@ export interface ChainIO extends Effec chainTo: Fn } -export interface PrintK extends Kind1 { - return: Print +interface PrintK