diff --git a/src/kiss/Helpers.hx b/src/kiss/Helpers.hx index 9761579..efc5a2b 100644 --- a/src/kiss/Helpers.hx +++ b/src/kiss/Helpers.hx @@ -18,6 +18,9 @@ using kiss.Helpers; using kiss.Kiss; using StringTools; +/** + * Compile-time helper functions for Kiss. Don't import or reference these at runtime. + */ class Helpers { public static function macroPos(exp:ReaderExp) { var kissPos = exp.pos; diff --git a/src/kiss/KissInterp.hx b/src/kiss/KissInterp.hx new file mode 100644 index 0000000..78cc016 --- /dev/null +++ b/src/kiss/KissInterp.hx @@ -0,0 +1,14 @@ +package kiss; + +import hscript.Interp; + +class KissInterp extends Interp { + // TODO standardize this with KissConfig.prepareInterp + function new() { + super(); + + variables.set("Prelude", Prelude); + variables.set("Lambda", Lambda); + variables.set("Std", Std); + } +} diff --git a/src/kiss/Prelude.hx b/src/kiss/Prelude.hx index 9689f12..d136b46 100644 --- a/src/kiss/Prelude.hx +++ b/src/kiss/Prelude.hx @@ -301,6 +301,7 @@ class Prelude { kissProcess = new Process("haxelib", ["run", "kiss", "--hscript"]); kissProcess.stdin.writeString('${kissStr.replace("\n", " ")}\n'); + try { var output = kissProcess.stdout.readLine(); if (output.startsWith(">>> ")) {