summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2009-09-10 23:58:57 +0200
committerLudovic Courtès <ludo@gnu.org>2009-09-11 00:05:48 +0200
commit87e003709170c0714ade5cb5a14edeab57558071 (patch)
treebcb5bb5168b0b630a402477b32a53563cf69ca9a
parentb7b9328817c0b9d7d4a69c52173ae4ad796be614 (diff)
downloadguile-87e003709170c0714ade5cb5a14edeab57558071.tar.gz
Add `λ' macro as an alternative to `lambda'.
* module/ice-9/boot-9.scm (λ): New macro. * NEWS: Update.
-rw-r--r--NEWS4
-rw-r--r--module/ice-9/boot-9.scm9
2 files changed, 12 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 578559614..ca7ddf608 100644
--- a/NEWS
+++ b/NEWS
@@ -105,6 +105,8 @@ unlikely that any code out there actually used this functionality.
GOOPS, Guile's object system, used to be documented in separate manuals.
This content is now included in Guile's manual directly.
+** Last but not least, the `λ' macro can be used in lieu of `lambda'
+
** And of course, the usual collection of bugfixes
Interested users should see the ChangeLog for more information.
@@ -700,6 +702,8 @@ no effect, and will trigger a deprecation warning.
Instead, use make-typed-array, list->typed-array, or array-type,
respectively.
+** Last but not least, the `λ' macro can be used in lieu of `lambda'
+
* Changes to the C interface
** Guile now uses libgc, the Boehm-Demers-Weiser garbage collector
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 21e3506cd..e6824b991 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -1,4 +1,4 @@
-;;; installed-scm-file
+;;; -*- mode: scheme; coding: utf-8; -*-
;;;; Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009
;;;; Free Software Foundation, Inc.
@@ -3034,6 +3034,13 @@ module '(ice-9 q) '(make-q q-length))}."
(defmacro name args . body)
(export-syntax name)))))
+;; And now for the most important macro.
+(define-syntax λ
+ (syntax-rules ()
+ ((_ formals body ...)
+ (lambda formals body ...))))
+
+
;; Export a local variable
;; This function is called from "modules.c". If you change it, be