Skip to content
This repository has been archived by the owner on Dec 21, 2022. It is now read-only.

Move slots to their most appropriate class definition #143

Open
reiniervandijk opened this issue Oct 10, 2013 · 2 comments
Open

Move slots to their most appropriate class definition #143

reiniervandijk opened this issue Oct 10, 2013 · 2 comments

Comments

@reiniervandijk
Copy link

It doesn't seem to make a lot of sense to have these two slots in the vanilla-mixin* definition:

   (%corners% nil)
   (%vertex-array% nil)

Would've expected those slots in base-object. I think it qualifies as an issue, a logically designed language is imperative. These two slots don't follow that cause.

@genworks
Copy link
Owner

These were put there for a reason - they are the minimal placeholders in vanilla-mixin to avoid crashing of tasty if you try to include a non-geometric object in the display-list. But you are right, it's not a clean way to do it. We'll make tasty smarter about what it tries to do with non-geometric objects in display list, and remove these slots from here.

@reiniervandijk
Copy link
Author

I understand the purpose of these slots, but if they are abstract slots and merely templates for subclasses that are supposed to be overridden, consider maybe to use:

   (%corners% *undefined*)
   (%vertex-array% *undefined*)

or:

   (%corners% (error "gendl: not implemented, should be overridden in subclasses.")
   (%vertex-array% (error "gendl: not implemented, should be overridden in subclasses.")

or add a slot:

(%drawable?% nil)

That you put to true on subclassing.

@genworks genworks added the $ label Jan 29, 2015
@genworks genworks removed the $ label Mar 26, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants