
New patches:

[added a slim-cl-syntax-sugar asd that is useful for loading only the system with none of its syntaxes
Russ Tyndall <russ@acceleration.net>**20090122214453] {
addfile ./slim-cl-syntax-sugar.asd
hunk ./slim-cl-syntax-sugar.asd 1
+;;; -*- mode: Lisp; Syntax: Common-Lisp; -*-
+;;;
+;;; Copyright (c) 2008 by the authors.
+;;;
+;;; See LICENCE for details.
+
+(cl:in-package :cl-user)
+
+;;; try to load asdf-system-connections
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (flet ((try (system)
+           (unless (asdf:find-system system nil)
+             (warn "Trying to install required dependency: ~S" system)
+             (when (find-package :asdf-install)
+               (funcall (read-from-string "asdf-install:install") system))
+             (unless (asdf:find-system system nil)
+               (error "The ~A system requires ~A." (or *compile-file-pathname* *load-pathname*) system)))
+           (asdf:operate 'asdf:load-op system)))
+    (try :asdf-system-connections)))
+
+(defpackage #:cl-syntax-sugar-system
+  (:use :cl :asdf))
+
+(in-package #:cl-syntax-sugar-system)
+
+(defsystem :slim-cl-syntax-sugar
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "A slim version of syntax sugar without any syntax's defined"
+  :depends-on (:alexandria :metabang-bind)
+  :components
+  ((:module "src"
+            :components ((:file "package")
+                         (:file "duplicates" :depends-on ("package"))
+                         (:file "asdf-integration" :depends-on ("package" "duplicates"))
+                         (:file "syntax-sugar" :depends-on ("duplicates")))
+	    )))
+
+(defsystem-connection slim-cl-syntax-sugar-and-swank
+  :requires (:slim-cl-syntax-sugar :swank)
+  :components
+  ((:module "src"
+            :components ((:file "swank-integration")))))
+
+(defsystem :lambda-with-bang-args-syntax
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "the lambda syntax that is packaged by default with cl-syntax-sugar"
+  :depends-on (:slim-cl-syntax-sugar)
+  :components
+  ((:module "src"
+            :components ((:file "lambda"))
+	    )))
}

[added interpol syntax asd and clsql-syntax.asd
Russ Tyndall <russ@acceleration.net>**20090122215100] {
addfile ./cl-interpol-syntax.asd
hunk ./cl-interpol-syntax.asd 1
+;; -*- lisp -*-
+
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (unless (find-package :cl-interpol-syntax)
+    (defpackage :cl-interpol-syntax
+	(:use :common-lisp :asdf))))
+
+(in-package :cl-interpol-syntax)
+
+(defsystem :cl-interpol-syntax
+  :description "A cl-syntax-sugar:defsyntax"
+  :author "Acceleration.net"
+  :licence "BSD like (so what you want)"
+  :depends-on (:cl-interpol :slim-cl-syntax-sugar))
+
+(defmethod asdf::traverse ( (op asdf:operation) (s (eql (find-system :cl-interpol-syntax))))
+  ;; ensure that operations on the system get performed on the system
+  (let ((results (call-next-method)))
+    (if (find s results :key #'cdr)
+	results
+	(append results (list (cons op s))))))
+
+(defmethod asdf:perform ( (op asdf:operation) (system (eql (find-system :cl-interpol-syntax))))
+  (when (next-method-p) (call-next-method))
+  (let ((*package* (find-package :cl-interpol-syntax)))
+    (cl-syntax-sugar:define-syntax cl-interpol (&optional (dispatch-char #\#) (sub-char #\?))
+      "define the interpol syntax"
+      (set-dispatch-macro-character dispatch-char sub-char #'cl-interpol::interpol-reader))))
addfile ./clsql-syntax.asd
hunk ./clsql-syntax.asd 1
+;; -*- lisp -*-
+
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (unless (find-package :clsql-syntax)
+    (defpackage :clsql-syntax
+	(:use :common-lisp :asdf))))
+
+(in-package :clsql-syntax)
+
+(defsystem :clsql-syntax
+  :description "A cl-syntax-sugar:defsyntax"
+  :author "Acceleration.net"
+  :licence "BSD like (so what you want)"
+  :depends-on (:clsql :slim-cl-syntax-sugar))
+
+(defmethod asdf::traverse ( (op asdf:operation) (s (eql (find-system :clsql-syntax))))
+  ;; ensure that operations on the system get performed on the system
+  (let ((results (call-next-method)))
+    (if (find s results :key #'cdr)
+	results
+	(append results (list (cons op s)))
+	)))
+
+(defmethod asdf:perform ( (op asdf:operation) (system (eql (find-system :clsql-syntax))))
+  (when (next-method-p) (call-next-method))
+  (let ((*package* (find-package :clsql-syntax)))
+    (cl-syntax-sugar:define-syntax clsql ()
+      "define the interpol syntax"
+      (set-macro-character clsql-sys::*sql-macro-open-char* #'clsql-sys::sql-reader-open)
+      (set-macro-character clsql-sys::*sql-macro-close-char* (get-macro-character #\))))))
}

[Transformed the asd files to reference the specific syntax asds when loading
Russ Tyndall <russ@acceleration.net>**20090122225955] {
hunk ./cl-interpol-syntax.asd 2
+;;
+;; This system is used for defining the cl-interpol syntax
+;;
hunk ./cl-syntax-sugar.asd 31
-  :depends-on (:alexandria :metabang-bind)
-  :components
-  ((:module "src"
-            :components ((:file "package")
-                         (:file "duplicates" :depends-on ("package"))
-                         (:file "asdf-integration" :depends-on ("package" "duplicates"))
-                         (:file "syntax-sugar" :depends-on ("duplicates"))
-                         (:file "one-liners" :depends-on ("duplicates" "syntax-sugar"))
-                         (:file "readtime-wrapper" :depends-on ("one-liners" "duplicates" "syntax-sugar"))
-                         (:file "quasi-quote" :depends-on ("one-liners" "duplicates" "syntax-sugar"))
-                         (:file "feature-cond" :depends-on ("one-liners" "duplicates" "syntax-sugar"))
-                         (:file "string-quote" :depends-on ("one-liners" "duplicates" "syntax-sugar"))))))
+  :depends-on (:quasi-quote-syntax
+	       :readtime-wrapper-syntax
+	       :string-quote-syntax
+	       :feature-cond-syntax
+	       ;; we want to load this first so put it last in the list
+	       :slim-cl-syntax-sugar 
+	       ))
hunk ./cl-syntax-sugar.asd 53
-  :components
-  ((:module "src"
-            :components ((:file "cl-walker-integration")
-                         (:file "lambda" :depends-on ("cl-walker-integration"))))))
+  :depends-on (:lambda-with-bang-args-syntax))
hunk ./clsql-syntax.asd 2
-
+;;
+;; This system is used for defining the clsql syntax
+;;
hunk ./slim-cl-syntax-sugar.asd 51
+  :depends-on (:slim-cl-syntax-sugar :cl-walker)
+  :components
+  ((:module "src"
+            :components ((:file "cl-walker-integration")
+			 (:file "lambda" :depends-on ("cl-walker-integration")))
+	    )))
+
+(defsystem :quasi-quote-syntax
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "the quasi-quote-syntax that is packaged by default with cl-syntax-sugar"
+  :depends-on (:slim-cl-syntax-sugar)
+  :components
+  ((:module "src"
+	    :components ((:file "one-liners")
+			 (:file "quasi-quote" :depends-on ("one-liners"))))))
+
+(defsystem :readtime-wrapper-syntax
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "the readtime-wrapper-syntax that is packaged by default with cl-syntax-sugar"
hunk ./slim-cl-syntax-sugar.asd 77
-            :components ((:file "lambda"))
+            :components ((:file "one-liners")
+			 (:file "readtime-wrapper" :depends-on ("one-liners")))
hunk ./slim-cl-syntax-sugar.asd 81
+(defsystem :string-quote-syntax
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "the string-quote-syntax that is packaged by default with cl-syntax-sugar"
+  :depends-on (:slim-cl-syntax-sugar)
+  :components
+  ((:module "src"
+            :components ((:file "one-liners")
+			 (:file "string-quote" :depends-on ("one-liners"))))))
+
+(defsystem :feature-cond-syntax
+  :author ("Levente Mészáros <levente.meszaros@gmail.com>"
+           "Attila Lendvai <attila.lendvai@gmail.com>")
+  :licence "BSD / Public Domain"
+  :description "the feature-cond-syntax that is packaged by default with cl-syntax-sugar"
+  :depends-on (:slim-cl-syntax-sugar)
+  :components
+  ((:module "src"
+            :components ((:file "one-liners")
+			 (:file "feature-cond" :depends-on ("one-liners"))))))
+
}

Context:

[follow cl-walker walk-ast rename
attila.lendvai@gmail.com**20081230135656
 Ignore-this: e3f04766224260764759543ab206b5df
] 
[fix qq reader thinko
attila.lendvai@gmail.com**20081229222531
 Ignore-this: d2a54b3ab738bda5bcb17db8eb45ae6e
] 
[fix nested qq reader bug and add log statements. the interesting change is small, getting the previous unquote reader in read-quasi-quote, the rest is logging and indenting
attila.lendvai@gmail.com**20081226180008
 Ignore-this: 6fb58dad7a72583aa0171a3c31def381
] 
[added :unquote-readtable-case to the qq syntax
attila.lendvai@gmail.com**20081214154547
 Ignore-this: 9a22ab89a7c9f9ce1e85a8d3f5657dc9
] 
[TAG 2008-11-27
attila.lendvai@gmail.com**20081127150509
 Ignore-this: 130c861e19237f1634b690048054d730
] 
Patch bundle hash:
7e8dea941d1e7cd9d379ca7659e6d6eb44e0e6d0
