I want to implement a toy programming language, but I have questions regarding the following in that article:
> Context free grammars. What this really means is the code should be parseable without having to look things up in a symbol table. C++ is famously not a context free grammar. A context free grammar, besides making things a lot simpler, means that IDEs can do syntax highlighting without integrating in most of a compiler front end, i.e. third party tools become much more likely to exist.
Many complex languages, like c++, rust are not context free. We therefore need semantic analysis.
What programming language features will be compromised if I stick to context free?
Will the end result be as expressive as c++/rust?
Any programming language that is massively adopted is context free?
BTW, the toy language I want to build will be something similar to javascript.
> Context free grammars. What this really means is the code should be parseable without having to look things up in a symbol table. C++ is famously not a context free grammar. A context free grammar, besides making things a lot simpler, means that IDEs can do syntax highlighting without integrating in most of a compiler front end, i.e. third party tools become much more likely to exist.
Many complex languages, like c++, rust are not context free. We therefore need semantic analysis.
What programming language features will be compromised if I stick to context free?
Will the end result be as expressive as c++/rust?
Any programming language that is massively adopted is context free?
BTW, the toy language I want to build will be something similar to javascript.