Hi guys I was reading the definitions we sent around and I have some questions about => Object subclass: #TestLocal slots: { #local => ProcessLocalSlot } classVariables: { } category: 'SlotTestGuille'. Object subclass: #TestLocal2 slots: { #local => ProcessLocalSlot default: 5} classVariables: { } category: 'SlotTestGuille'. Are we sure that we want to use that => I thought about = but this is not an assignement this is a declaration and normally we use | for declaration. So what would be other alternatives before the world use => Then I still do not understand why we have empty classVariables: to me it does not make sense. I do not get why we like to have empty collections for the sake of having empty collections. We are trapped in some strange ways of thinking. Object subclass: #TestLocal slots: { #local => ProcessLocalSlot } classVariables: { } category: 'SlotTestGuille'. => Object subclass: #TestLocal slots: { #local => ProcessLocalSlot } package: 'SlotTestGuille'.
On 27 February 2015 at 16:13, stepharo <stepharo@free.fr> wrote:
Are we sure that we want to use that => I thought about = but this is not an assignement this is a declaration and normally we use | for declaration.
So what would be other alternatives before the world use =>
But | for local variables is syntax, and it's used as a bracket. It's also the logical or operator⦠I'd propose :: because it recalls the :x for block arguments, or -- because it looks like a typographic em-dash: slots: { #local -- ProcessLocalSlot. #foo -- SomeOtherKindOfSlot. By the way, using an operator in this way is a little strange: what you read does not match the usual precedence rules (#default: is not a factory method of ProcessLocalSlot, it's an accessor on the result of #local => ProcessLocalSlot) Then I still do not understand why we have empty classVariables: to me it
does not make sense. I do not get why we like to have empty collections for the sake of having empty collections. We are trapped in some strange ways of thinking.
Are there strong arguments against a cascade ? As far as I understand, the only real constraint is that the set of messages that are authorized in class creation syntax should be closed in some way. -- Damien Pollet type less, do more [ | ] http://people.untyped.org/damien.pollet
On 27 Feb 2015, at 20:47, Damien Pollet <damien.pollet@gmail.com> wrote:
On 27 February 2015 at 16:13, stepharo <stepharo@free.fr <mailto:stepharo@free.fr>> wrote: Are we sure that we want to use that => I thought about = but this is not an assignement this is a declaration and normally we use | for declaration. So what would be other alternatives before the world use =>
Yes, everything is not yet fixedâ¦
But | for local variables is syntax, and it's used as a bracket. It's also the logical or operatorâ¦
I'd propose :: because it recalls the :x for block arguments, or -- because it looks like a typographic em-dash:
slots: { #local -- ProcessLocalSlot. #foo -- SomeOtherKindOfSlot.
interesting!
By the way, using an operator in this way is a little strange: what you read does not match the usual precedence rules (#default: is not a factory method of ProcessLocalSlot, it's an accessor on the result of #local => ProcessLocalSlot)
Oh, true.. that needs to be well documented. (having the method in addition on the class side makes sense, I guess).
Then I still do not understand why we have empty classVariables: to me it does not make sense. I do not get why we like to have empty collections for the sake of having empty collections. We are trapped in some strange ways of thinking.
Are there strong arguments against a cascade ?
Good question. What is clear is that changing methods like subclass:instanceVariableNames:classVariableNames:category: and adding all variants is annoying. E.g. the âwe do not show the empty poolâ (and the slot definiton) is still just done âon the surfaceâ in Natutilus (#definitionForNautilus) as changing #definition is actually tricky to get all the tests green (esp Monticello). https://pharo.fogbugz.com/f/cases/14063/clean-up-definitionForNautilus <https://pharo.fogbugz.com/f/cases/14063/clean-up-definitionForNautilus> Marcus
participants (3)
-
Damien Pollet -
Marcus Denker -
stepharo