From c5fa12f344b128b10213f326cfe1e4631a0b1673 Mon Sep 17 00:00:00 2001 From: Ian Price Date: Wed, 16 Aug 2017 21:46:12 +0100 Subject: [PATCH] Implement variable-bound? builtin * module/language/js-il/runtime.js(variable-bound?): Implement builtin --- module/language/js-il/runtime.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/module/language/js-il/runtime.js b/module/language/js-il/runtime.js index 5591baa8e..786e6c3e3 100644 --- a/module/language/js-il/runtime.js +++ b/module/language/js-il/runtime.js @@ -1360,6 +1360,10 @@ def_guile0("make-undefined-variable", function (self, cont, val) { return cont(new scheme.Box(scheme.UNDEFINED)); }); +def_guile0("variable-bound?", function (self, cont, box) { + return cont(coerce_bool(!(box.x === scheme.UNDEFINED))); +}); + def_guile0("define!", function (self, cont, symbol, value) { // FIXME: validate symbol return cont(scm_module_define(scm_current_module(), symbol, value));