Replies: 2 comments 8 replies
-
? |
Beta Was this translation helpful? Give feedback.
-
multipass is not needed. I am pretty sure that scan_ident() can be refactored to classify type names without those ugly upper/lower case rules. Moreover some human languages are not using character cases at all ( ⅓ of Earth population, BTW). I believe that support of UNICODE in modern PLs is highly desirable. I think that scan_indent() may take Lexer -> CompilationUnit -> (types and module_aliases) info for name classification. At least such relaxed naming rules can be made local to compilation unit. This: Does not require multipass and does not change language semantic, at all.
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
As for now naming restrictions on types are limiting use of C3 quite a lot.
Especially in cases where C3 code needs to interact with external systems. E.g. HWND, MessageBox(), HELEMENT (in Sciter Engine), etc. are invalid type names from C3 standpoint.
Such limitations are probably OK in GoLang for example but in language that should use system API as it is ?
Beta Was this translation helpful? Give feedback.
All reactions