Re: [WebIDL] Remove string constants

On Thu, Oct 20, 2011 at 1:18 AM, James Graham <jgraham@opera.com> wrote:
> On 10/20/2011 07:26 AM, Jonas Sicking wrote:
>>
>> On Wed, Oct 19, 2011 at 7:25 PM, Anne van Kesteren<annevk@opera.com>
>>  wrote:
>>>
>>> Strings are intrinsically meaningful and therefore have no need for
>>> constants in APIs for the platform. See XMLHttpRequest.responseType and
>>> the
>>> <canvas>  2D API for examples. We should remove string constants so
>>> people
>>> (e.g. public-web-perf) will not use them and introduce inconsistent APIs.
>>>
>
>> However, there still is an argument for the constant, which is that it
>> enables feature detection.
>
> The other argument is that they make it easier to implement an IDE with code
> completion. I don't know if this is enough to make up for the fact that they
> are long and ugly.

Given that I'd prefer for people to not write Foo.BAR and rather write
"bar" (since the latter is faster), I don't think this is a good
argument.

> A third argument is that it is well known that constants are always
> uppercase so one doesn't need to remember whether it is "2d" or "2D".

The details, such as capitalization, of strings should be rememberable
enough that this shouldn't be a problem.

/ Jonas

Received on Thursday, 20 October 2011 09:09:25 UTC