diff options
Diffstat (limited to 'module/ice-9/eval.scm')
-rw-r--r-- | module/ice-9/eval.scm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/module/ice-9/eval.scm b/module/ice-9/eval.scm index b3721e4e2..5d2bfb73a 100644 --- a/module/ice-9/eval.scm +++ b/module/ice-9/eval.scm @@ -1,6 +1,6 @@ ;;; -*- mode: scheme; coding: utf-8; -*- -;;;; Copyright (C) 2009 +;;;; Copyright (C) 2009, 2010 ;;;; Free Software Foundation, Inc. ;;;; ;;;; This library is free software; you can redistribute it and/or @@ -222,6 +222,11 @@ (('define (name . x)) (define! name (eval x env))) + (('dynwind (in exp . out)) + (dynamic-wind (eval in env) + (lambda () (eval exp env)) + (eval out env))) + (('apply (f args)) (apply (eval f env) (eval args env))) |