On 11 Sep 2019, at 02:13, Gabriel Cotelli <g.cotelli@gmail.com> wrote:
Looks like Christmas season opened early this year :)
Jokes aside, I'm in favor of changing some of the characters we use for binary selectors to allow it to be used in keyword/unary messages.
I'll include % in that list. For me its more useful as a way to create percentages ( 5 % ) than to be used as a binary message for keeping an ugly name from C-like languages.
Can you explain? Because I thought that % was used and right now it is a binary selector so I would not change it.
· is middle dot and it's used in some math operations AFAIR à is used in math also (it's used as the multiplication sign for scalars, cross product for vectors and cartesian product for sets) Yes I know. We can let them rot in peace.
One thing that would be really cool is that we can use the full power of Unicode in methods/class names. Projects like polymath and DSLs can clearly take advantage of that. Some examples I've just invented, but can be supported:
â from: 1 to: 5 do: [:i | i + i squared ] 1 ⥠3 â anyIn: #( 1 2 4) such: [:x | x isPrime ] â includes: 1
:) Why not :) For me the first step is to be able to rescue ? and ! from decay and give us a MUCH better way to convey meaning. Just for the fun look at the method of the BIContext to see what I mean. Iâm refactoring the API of the new formatter and it is so frustrating to not being able to express interrogation nicely.
On Tue, Sep 10, 2019 at 5:15 PM ducasse <stepharo@netcourrier.com <mailto:stepharo@netcourrier.com>> wrote: I would love to retract ? and ! from the list of binary selectors. Iâm super super frustrated that predicates cannot be easily identifiable.
for example is lineUpBlockBrackets an action or a testing method.
I think that we are trapped in mistakes from the past. In racket and scheme and I guess ruby too we can use ? in the method and this change the game.
self lineUpBlockBrackets?
We have plenty of binary selector parts that are not used and think that it is frustrating.
Let us check:
Character specialCharacters
'+-/\*~<>=@,%|&?!·÷±Ã'
+ - / \ ~ <
= @ , & | %
those are ok
I have no idea what is · nor how to type it. ÷ looks from the past. ± so funny à no idea what it is andâ¦.
Then we have two that could really improve our language ? and !
Do not tell me that there is a value in these selectors?
(#(#+ #- #/ #\ #* #~ #< #> #= #@ #, #% #| #& #? #!) combinations select: [ :each | each size = 3 and: [ each includesAnyOf: #(#? #!) ] ]) collect: [ :each | each first, each second, each third ]
#(#'+-?' #'+-!' #'+/?' #'+/!' #'+\?' #'+\!' #'+*?' #'+*!' #'+~?' #'+~!' #'+<?' #'+<!' #'+>?' #'+>!' #'+=?' #'+=!' #'+@?' #'+@!' #'+,?' #'+,!' #'+%?' #'+%!' #'+|?' #'+|!' #'+&?' #'+&!' #'+?!' #'-/?' #'-/!' #'-\?' #'-\!' #'-*?' #'-*!' #'-~?' #'-~!' #'-<?' #'-<!' #'->?' #'->!' #'-=?' #'-=!' #'-@?' #'-@!' #'-,?' #'-,!' #'-%?' #'-%!' #'-|?' #'-|!' #'-&?' #'-&!' #'-?!' #'/\?' #'/\!' #'/*?' #'/*!' #'/~?' #'/~!' #'/<?' #'/<!' #'/>?' #'/>!' #'/=?' #'/=!' #'/@?' #'/@!' #'/,?' #'/,!' #'/%?' #'/%!' #'/|?' #'/|!' #'/&?' #'/&!' #'/?!' #'\*?' #'\*!' #'\~?' #'\~!' #'\<?' #'\<!' #'\>?' #'\>!' #'\=?' #'\=!' #'\@?' #'\@!' #'\,?' #'\,!' #'\%?' #'\%!' #'\|?' #'\|!' #'\&?' #'\&!' #'\?!' #'*~?' #'*~!' #'*<?' #'*<!' #'*>?' #'*>!' #'*=?' #'*=!' #'*@?' #'*@!' #'*,?' #'*,!' #'*%?' #'*%!' #'*|?' #'*|!' #'*&?' #'*&!' #'*?!' #'~<?' #'~<!' #'~>?' #'~>!' #'~=?' #'~=!' #'~@?' #'~@!' #'~,?' #'~,!' #'~%?' #'~%!' #'~|?' #'~|!' #'~&?' #'~&!' #'~?!' #'<>?' #'<>!' #'<=?' #'<=!' #'<@?' #'<@!' #'<,?' #'<,!' #'<%?' #'<%!' #'<|?' #'<|!' #'<&?' #'<&!' #'<?!' #'>=?' #'>=!' #'>@?' #'>@!' #'>,?' #'>,!' #'>%?' #'>%!' #'>|?' #'>|!' #'>&?' #'>&!' #'>?!' #'=@?' #'=@!' #'=,?' #'=,!' #'=%?' #'=%!' #'=|?' #'=|!' #'=&?' #'=&!' #'=?!' #'@,?' #'@,!' #'@%?' #'@%!' #'@|?' #'@|!' #'@&?' #'@&!' #'@?!' #',%?' #',%!' #',|?' #',|!' #',&?' #',&!' #',?!' #'%|?' #'%|!' #'%&?' #'%&!' #'%?!' #'|&?' #'|&!' #'|?!' #'&?!â)
may be this one #&?! is useful for WTF!
And because of that we sacrifice having nice method names! I really think that we should change that.
S.