guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 05/36: guile-private-ref


From: Christopher Allan Webber
Subject: [Guile-commits] 05/36: guile-private-ref
Date: Fri, 25 Mar 2016 20:02:53 +0000

cwebber pushed a commit to branch wip-elisp
in repository guile.

commit d3dabad7e921351a378d7fb2904805b6c80f9f25
Author: BT Templeton <address@hidden>
Date:   Fri Aug 23 03:01:36 2013 -0400

    guile-private-ref
    
    * module/language/elisp/compile-tree-il.scm (compile-guile-private-ref):
      New special operator.
---
 module/language/elisp/compile-tree-il.scm       |    6 ++++++
 module/language/elisp/runtime/function-slot.scm |    2 ++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/module/language/elisp/compile-tree-il.scm 
b/module/language/elisp/compile-tree-il.scm
index baa6b2a..5598083 100644
--- a/module/language/elisp/compile-tree-il.scm
+++ b/module/language/elisp/compile-tree-il.scm
@@ -41,6 +41,7 @@
             compile-labels
             compile-let*
             compile-guile-ref
+            compile-guile-private-ref
             compile-guile-primitive
             compile-function
             compile-defmacro
@@ -667,6 +668,11 @@
     ((,module ,sym) (guard (and (list? module) (symbol? sym)))
      (make-module-ref loc module sym #t))))
 
+(defspecial guile-private-ref (loc args)
+  (pmatch args
+    ((,module ,sym) (guard (and (list? module) (symbol? sym)))
+     (make-module-ref loc module sym #f))))
+
 ;;; guile-primitive allows to create primitive references, which are
 ;;; still a little faster.
 
diff --git a/module/language/elisp/runtime/function-slot.scm 
b/module/language/elisp/runtime/function-slot.scm
index 3b10205..34170a5 100644
--- a/module/language/elisp/runtime/function-slot.scm
+++ b/module/language/elisp/runtime/function-slot.scm
@@ -30,6 +30,7 @@
                  (compile-labels . labels)
                  (compile-let* . let*)
                  (compile-guile-ref . guile-ref)
+                 (compile-guile-private-ref . guile-private-ref)
                  (compile-guile-primitive . guile-primitive)
                  (compile-function . function)
                  (compile-defun . defun)
@@ -52,6 +53,7 @@
                labels
                let*
                guile-ref
+               guile-private-ref
                guile-primitive
                function
                defun



reply via email to

[Prev in Thread] Current Thread [Next in Thread]