three small proposals: the bikeshed cometh!

Douglas Crockford douglas at
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 
>> <mailto:brendan at>> 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