James Clark

Results 138 comments of James Clark

@hasithaa Please describe what the current implementation does

As far as I can see, there is no need to treat things like `int` and `string` as a reserved word. It can just be an identifier that is predefined...

One thing I find absolutely ghastly is having to quote prefixes that are keywords e.g. `'xml:Element`. At the moment we have ``` module-prefix := identifier ``` Can we fix this...

Split off https://github.com/ballerina-platform/ballerina-spec/issues/34#issuecomment-732518850 into a separate issue #659. The rest we will address later.

C# has concept of contextual keywords https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/contextual-keywords https://github.com/dotnet/csharplang/blob/main/spec/lexical-structure.md#keywords

List of all Ballerina keywords: https://github.com/ballerina-platform/ballerina-lang/blob/master/compiler/ballerina-parser/src/main/java/io/ballerina/compiler/internal/parser/LexerTerminals.java

C++ context-sensitive keywords https://bulldozer00.blog/2014/04/17/context-sensitive-keywords/

Can we special case `join`, `map` and `start` as method-name?

We decided to move this to 2022R1 except possibly for the special case in #958.

I suspect there are cases when we can allow keywords after colon in a qualified identifier, but this is complicated by the fact the colon is also used in conditional...