[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Memorial Day Ballot



I agree with all your recommendations except for the following issues:

8. Why must destructing live in lambda lists?  I think a destructing form would
be much more useful (if you can do destructuring in defmacro's, why not other
places like compiler transforms?).  How about a macro DESTRUCTURE, which could
be used like this:

	(defmacro new-control-construct (foo &optional bar &rest baz)
	  (destructure foo (var init iterate-clause)
	    ...))

instead of:

	(defmacro new-control-construct ((var init iterate-clause)
					 &optional bar &rest baz)
	  ...)
?

12. Where would the name be stored?  Our DEFSTRUCT uses a special subtype code
to say that the thing's a named structure, and stashes the name in slot 0 of
the vector.  So the slots are all "moved up one" into the vector.  It seems
that the manual would have to specify something about the implementation, i.e.
where the name is stored.

--Skef