From 18905baf6ed70c4213c61399229d4afce0ccc161 Mon Sep 17 00:00:00 2001 From: Noah Lavine Date: Tue, 1 Feb 2011 10:42:50 -0500 Subject: [PATCH] peg: remove unhygienic safe-bind, safe-bind-f * module/ice-9/peg.scm (safe-bind, safe-bind-f): Remove. --- module/ice-9/peg.scm | 40 ---------------------------------------- 1 file changed, 40 deletions(-) diff --git a/module/ice-9/peg.scm b/module/ice-9/peg.scm index 2219b60ba..729980fd0 100644 --- a/module/ice-9/peg.scm +++ b/module/ice-9/peg.scm @@ -26,46 +26,6 @@ (eval-when (compile load eval) -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;;;; CONVENIENCE MACROS -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -(define (eeval exp) - (eval exp (interaction-environment))) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;;;; MACRO BUILDERS -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;; Safe-bind helps to bind macros safely. -;; e.g.: -;; (safe-bind -;; (a b) -;; `(,a ,b)) -;; gives: -;; (# #) -(define-syntax safe-bind - (lambda (x) - (syntax-case x () - ((_ vals . actions) - (datum->syntax x (apply safe-bind-f - (cons - (syntax->datum #'vals) - (syntax->datum #'actions)))))))) -;; (define-macro (safe-bind vals . actions) -;; (apply safe-bind-f (cons vals actions))) -(define (safe-bind-f vals . actions) - `(let ,(map (lambda (val) `(,val (make-symbol ,(symbol->string val)))) vals) - ,@actions)) - -;; Unsafe-bind is like safe-bind but uses symbols that are easier to read while -;; debugging rather than safe ones. Currently unused. -;; (define-macro (unsafe-bind vals . actions) -;; (apply unsafe-bind-f (cons vals actions))) -;; (define (unsafe-bind-f vals . actions) -;; `(let ,(map (lambda (val) `(,val ',val)) vals) -;; ,@actions)) - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;; LOOPING CONSTRUCTS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;