Ah, when I referred to using a plist, I meant in sketching component properties I put these properties in the plist as an implementation detail. So I think
(defmacro symbols2ecs (symbols)
`(ecs:make-object
',(loop for symbol in symbols
for key = (intern (symbol-name symbol) :keyword)
for plist = (symbol-plist symbol)
collect (cons key plist))))Ends up with your spec for me ;p sorry for thinking out loud. I see it's been tested on ECL, I'll figure out why mine wasn't working.