three small proposals: the bikeshed cometh!

Douglas Crockford douglas at crockford.com
Thu Apr 29 19:55:05 PDT 2010


On 11:59 AM, Brendan Eich wrote:
> On Apr 29, 2010, at 4:33 PM, Mark S. Miller wrote:
>
>> On Thu, Apr 29, 2010 at 2:40 PM, Brendan Eich <brendan at mozilla.com 
>> <mailto:brendan at mozilla.com>> wrote:
>>
>>     The JSConf audience poll did provoke someone to suggest "fun",
>>     and I mentioned "fn" (the ML family languages have both). Two
>>     letters or three might be few enough, and avoid the line-noise
>>     and can't-type-Greek issues.
>>
>>
>> Neither "fun" nor "fn" are reserved identifiers. They are short ascii 
>> identifiers, so conflicts are virtually guaranteed. I don't see any 
>> realistic way to make them keywords without either breaking the web 
>> or (in your terminology) raising the opt-in migration tax too high. 
>> Am I missing something?
>
> No, you're not missing anything, except possibly this: the same 
> objection applies to lambda (λ) and florin (ƒ).
>
> On the other hand, with opt-in versioning, developers might find that 
> the migration tax is not that bad, for any of these including "fn" and 
> perhaps even "fun".
>
>
>> If there is a painless way to introduce short keywords that weren't 
>> previously reserved, I'd love to understand that.
>
> It's all about the low odds of ƒ or (I have to go copy and paste now) 
> λ or fn being used as an identifier. The odds are worse for fn, even 
> worse for fun, but possibly still low enough.
>
> But again, any Unicode identifier however short (if not already 
> reserved) is an incompatible change from ES1-5.
>
> /be

I think we should be focused on solving real problems. We have some 
significant problems to solve, and 'function' being 8 letters isn't one 
of them.


More information about the es-discuss mailing list