From b7ebab14281b380874a222ec862b547bf48b3dd2 Mon Sep 17 00:00:00 2001 From: Danny Yoo Date: Sat, 30 Jul 2011 21:09:07 -0400 Subject: [PATCH] experiment --- js-assembler/module-knowledge.rkt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 js-assembler/module-knowledge.rkt diff --git a/js-assembler/module-knowledge.rkt b/js-assembler/module-knowledge.rkt new file mode 100644 index 0000000..bae059f --- /dev/null +++ b/js-assembler/module-knowledge.rkt @@ -0,0 +1,17 @@ +#lang racket/base + +;; Provides a mapping of the core bindings in kernel, so that we know statically +;; if something is implemented as a primitive or a closure. +(require planet/util) + + +(define ns (make-base-empty-namespace)) +(define bound-procedure-names + (let ([path (resolve-planet-path `(planet ,(this-package-version-symbol lang/kernel)))]) + (parameterize ([current-namespace ns]) + (namespace-require path) + (for/list ([name (namespace-mapped-symbols)] + #:when (namespace-variable-value name #t (lambda () #f))) + name)))) + +