Rename `sequence' to `bind' because of conflicts when runnning on SBCL
Sat Aug 19 01:09:36 PDT 2006 Hoan Ton-That <hoan@ton-that.org>
* Rename `sequence' to `bind' because of conflicts when runnning on SBCL
diff -rN -u old-public_html/src/protocol.lisp new-public_html/src/protocol.lisp
--- old-public_html/src/protocol.lisp 2014-04-18 10:00:50.000000000 -0700
+++ new-public_html/src/protocol.lisp 2014-04-18 10:00:50.000000000 -0700
@@ -45,17 +45,14 @@
ORELSE is just the plumbing behind the TRY macro, which is
just a variable arity version of ORELSE."))
-(defgeneric sequence (tx1 tx2)
+(defgeneric bind (tx1 tx2)
(:documentation "Compose two transactions sequentially.
-SEQUENCE returns a new transaction.
+BIND returns a new transaction.
If either TX1 or TX2 retries then the whole transaction retries.
-The transaction's return value (not SEQUENCE's) is the return
-value of TX2.
-
-SEQUENCE is just the plumbing behind the PROGT macro, which is
-just a variable arity version of SEQUENCE."))
+The transaction's return value (not BIND's) is the return value
+of TX2."))
;;;; ** Transaction logs
diff -rN -u old-public_html/src/standard-transaction.lisp new-public_html/src/standard-transaction.lisp
--- old-public_html/src/standard-transaction.lisp 2014-04-18 10:00:50.000000000 -0700
+++ new-public_html/src/standard-transaction.lisp 2014-04-18 10:00:50.000000000 -0700
@@ -77,19 +77,13 @@
;;;; ** Composing
-(defmethod sequence ((tx1 standard-transaction) (tx2 standard-transaction))
+(defmethod bind ((tx1 standard-transaction) (tx2 standard-transaction))
(new 'standard-transaction
:thunk
(lambda ()
(funcall (thunk-of tx1))
(funcall (thunk-of tx2)))))
-(defmethod sequence ((tx1 standard-transaction) (f function))
- (new 'standard-transaction
- :thunk
- (lambda ()
- (funcall (thunk-of (funcall f (funcall (thunk-of tx1))))))))
-
(defmethod orelse ((tx1 standard-transaction) (tx2 standard-transaction))
(new 'standard-transaction
:thunk
diff -rN -u old-public_html/src/walker.lisp new-public_html/src/walker.lisp
--- old-public_html/src/walker.lisp 2014-04-18 10:00:50.000000000 -0700
+++ new-public_html/src/walker.lisp 2014-04-18 10:00:50.000000000 -0700
@@ -59,8 +59,8 @@
;;;; ** Special Variables
-(defvar *trans-funs* '((sequence t t)
- (orelse t t)
+(defvar *trans-funs* '((orelse t t)
+ (bind t t)
(retry))
"When walking code, this variable contains a list of
functions (represented by symbols) which return transactions when