diff options
author | Andy Wingo <wingo@pobox.com> | 2009-11-26 22:11:40 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2009-12-01 21:00:26 +0100 |
commit | 8397a3a69555c73d4e1df89ae96c561d2ea43188 (patch) | |
tree | 324e58b81be20cc8c153e951f63bb28fe692a022 | |
parent | ecdfc95d1c4cca8cb87412cd30a8fbb39afadd21 (diff) | |
download | guile-8397a3a69555c73d4e1df89ae96c561d2ea43188.tar.gz |
local-eval will go away
* module/ice-9/debugger/commands.scm:
* module/ice-9/debugging/traps.scm:
* module/ice-9/emacs.scm:
* module/ice-9/gds-client.scm: Add some FIXMEs due to impending
local-eval removal.
* module/oop/goops.scm (make-generic-bound-check-getter): Just the
compiled closure case here.
-rw-r--r-- | module/ice-9/debugger/commands.scm | 3 | ||||
-rwxr-xr-x | module/ice-9/debugging/traps.scm | 3 | ||||
-rw-r--r-- | module/ice-9/emacs.scm | 3 | ||||
-rwxr-xr-x | module/ice-9/gds-client.scm | 2 | ||||
-rw-r--r-- | module/oop/goops.scm | 9 |
5 files changed, 9 insertions, 11 deletions
diff --git a/module/ice-9/debugger/commands.scm b/module/ice-9/debugger/commands.scm index 00cab87f6..dbb06c1e6 100644 --- a/module/ice-9/debugger/commands.scm +++ b/module/ice-9/debugger/commands.scm @@ -1,6 +1,6 @@ ;;;; (ice-9 debugger commands) -- debugger commands -;;; Copyright (C) 2002, 2006 Free Software Foundation, Inc. +;;; Copyright (C) 2002, 2006, 2009 Free Software Foundation, Inc. ;;; ;;;; This library is free software; you can redistribute it and/or ;;;; modify it under the terms of the GNU Lesser General Public @@ -71,6 +71,7 @@ If the number of frames isn't explicitly given, the debug option (apply display-error stack (current-error-port) args))))) (throw 'continue)) +;; FIXME: no longer working due to no more local-eval (define (evaluate state expression) "Evaluate an expression in the environment of the selected stack frame. The expression must appear on the same line as the command, however it diff --git a/module/ice-9/debugging/traps.scm b/module/ice-9/debugging/traps.scm index 292456d43..132e2d424 100755 --- a/module/ice-9/debugging/traps.scm +++ b/module/ice-9/debugging/traps.scm @@ -1,6 +1,6 @@ ;;;; (ice-9 debugging traps) -- abstraction of libguile's traps interface -;;; Copyright (C) 2002, 2004 Free Software Foundation, Inc. +;;; Copyright (C) 2002, 2004, 2009 Free Software Foundation, Inc. ;;; Copyright (C) 2005 Neil Jerram ;;; ;;;; This library is free software; you can redistribute it and/or @@ -887,6 +887,7 @@ it twice." (= (caddr trap-location) (slot-ref trap 'column)))))) ;; (trap-here EXPRESSION . OPTIONS) +;; FIXME: no longer working due to no mmacros, no local-eval (define trap-here (procedure->memoizing-macro (lambda (expr env) diff --git a/module/ice-9/emacs.scm b/module/ice-9/emacs.scm index 88035862f..5bd52823c 100644 --- a/module/ice-9/emacs.scm +++ b/module/ice-9/emacs.scm @@ -1,4 +1,4 @@ -;;;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2006 Free Software Foundation, Inc. +;;;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2006, 2009 Free Software Foundation, Inc. ;;;; ;;;; This library is free software; you can redistribute it and/or ;;;; modify it under the terms of the GNU Lesser General Public @@ -234,6 +234,7 @@ msg) msg))) +;; FIXME: no longer working due to removal of local-eval (define (emacs-frame-eval frame form) (let ((source (get-frame-source frame))) (if source diff --git a/module/ice-9/gds-client.scm b/module/ice-9/gds-client.scm index 03e292737..aa45b543c 100755 --- a/module/ice-9/gds-client.scm +++ b/module/ice-9/gds-client.scm @@ -248,6 +248,8 @@ erf)) flags))) +;; FIXME: the new evaluator breaks this, by removing local-eval. Need to +;; figure out our story in this regard. (define (eval-in-frame stack index expr) (write-form (list 'eval-result diff --git a/module/oop/goops.scm b/module/oop/goops.scm index 87afae994..2e96e0b03 100644 --- a/module/oop/goops.scm +++ b/module/oop/goops.scm @@ -1114,14 +1114,7 @@ #:slot-definition slotdef))) (define (make-generic-bound-check-getter proc) - (let ((source (and (closure? proc) (procedure-source proc)))) - (if (and source (null? (cdddr source))) - (let ((obj (caadr source))) - ;; smart closure compilation - (local-eval - `(lambda (,obj) (,assert-bound ,(caddr source) ,obj)) - (procedure-environment proc))) - (lambda (o) (assert-bound (proc o) o))))) + (lambda (o) (assert-bound (proc o) o))) ;; the idea is to compile the index into the procedure, for fastest ;; lookup. Also, @slot-ref and @slot-set! have their own bytecodes. |