[Seaside-dev] Broken build because of use of #includesSubstring:

John O'Keefe wembley at instantiations.com
Wed Jan 16 13:34:08 UTC 2013


Julian -

For some reason we were not very consistent in our decisions :-(

When we were defining the Grease API, we decided to add
#beginsWithSubCollection: and #endsWithSubCollection, but we didn't add
#includesSubCollection:. I certainly don't have a problem adding it now.

We chose the camel case spelling of #includesSubString: to match Pharo's
implementation (now changed in V2.0). VA Smalltalk and VW (don't know about
other Seaside providers) have #includesSubString: in their Grease layer.

Just to further confuse the discussion, Seaside also uses
#includeSubstring:caseSensitive: (notice no camel case spelling).

John O'Keefe [|], CTO/Principal Smalltalk Architect, Instantiations Inc.
Skype: john_okeefe2     Mobile:  +1 919 417-3181 (Business hours USA
Eastern Time zone (GMT -5))
john_okeefe at instantiations.com
http://www.instantiations.com
*VA Smalltalk...Onward and Upward!*


On Tue, Jan 15, 2013 at 5:21 PM, Julian Fitzell <jfitzell at gmail.com> wrote:

> You mean when I was visiting you guys? I thought this might have come up
> before, but I can't find a Grease test for #includesSubString: or
> #includesSubstring:
>
> I'd guess that what we actually decided was that we'd avoid the issue
> because code that wanted to be compatible could simply use
> #indexOfSubCollection:startingAt:, which is defined in the ANSI standard.
> But I see some usage of #includesSubString: has appeared in Seaside, which
> has likely prompted other platforms to implement it.
>
> Given that and given that ANSI has #subStrings:, it does seem more
> sensible to the camelCase version to Grease. However, I have one other
> thought: do we really need a string-specific method for this? Might it be
> preferable to test for, say, #includesSubCollection: on
> SequenceableCollection? (ok, I don't like the name, but it's consistent
> with the other ANSI methods...)
>
> Julian
>
>
> On Mon, Jan 14, 2013 at 4:45 PM, John O'Keefe <wembley at instantiations.com>wrote:
>
>> For Grease, and therefore for Seaside, we agreed on the spelling
>> includesSubString:.
>>
>> John O'Keefe [|], CTO/Principal Smalltalk Architect, Instantiations Inc.
>> Skype: john_okeefe2     Mobile:  +1 919 417-3181 (Business hours USA
>> Eastern Time zone (GMT -5))
>> john_okeefe at instantiations.com
>> http://www.instantiations.com
>> *VA Smalltalk...Onward and Upward!*
>>
>>
>> On Sun, Jan 13, 2013 at 4:19 PM, Lukas Renggli <renggli at gmail.com> wrote:
>>
>>> I don't care much what version we use either. However we should keep
>>> in mind that this is not about Pharo only, but also about all other
>>> Seaside platforms.
>>>
>>> Unfortunately ANSI does not describe a method for substring matching.
>>> However ANSI describes #subStrings:, which would go along the current
>>> #includesSubString: consistency wise.
>>>
>>> Lukas
>>>
>>>
>>>
>>> On 13 January 2013 22:11, Julian Fitzell <jfitzell at gmail.com> wrote:
>>> > On Sat, Jan 12, 2013 at 10:42 PM, Sven Van Caekenberghe <sven at stfx.eu>
>>> > wrote:
>>> >>
>>> >> Julian,
>>> >>
>>> >> On 12 Jan 2013, at 16:29, Julian Fitzell <jfitzell at gmail.com> wrote:
>>> >> > No need for a grease-specific selector - just need different
>>> versions of
>>> >> > grease for Pharo 1 and Pharo 2 if people want both versions of Pharo
>>> >> > supported.. Can't recall what other platforms use, but in general I
>>> prefer
>>> >> > 'Substring' myself.
>>> >>
>>> >> There are Grease-Pharo-[10|11|20]-Core packages in SqS/Seaside31 so I
>>> >> guess the possibility to differentiate is there.
>>> >>
>>> >> My point is however that the Seaside developers have to make a simple
>>> >> choice: keep the older #includesSubString: in the code base or switch
>>> to the
>>> >> newer (more logical) #includesSubstring:
>>> >>
>>> >> Either choice is OK, just pick one so that we can get this trivial
>>> issue
>>> >> out of the way.
>>> >
>>> >
>>> > As I said, my personal preference is #includesSubstring: as
>>> "SubString" has
>>> > always bothered me, but it depends what other platforms do. There's
>>> not much
>>> > point using the version that only one platform uses and forcing all the
>>> > others to implement a Grease extension...
>>> >
>>> > Julian
>>> >
>>> > _______________________________________________
>>> > seaside-dev mailing list
>>> > seaside-dev at lists.squeakfoundation.org
>>> > http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>>> >
>>>
>>>
>>>
>>> --
>>> Lukas Renggli
>>> www.lukas-renggli.ch
>>> _______________________________________________
>>> seaside-dev mailing list
>>> seaside-dev at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>>>
>>
>>
>> _______________________________________________
>> seaside-dev mailing list
>> seaside-dev at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside-dev/attachments/20130116/58bbece7/attachment.htm


More information about the seaside-dev mailing list