2 ms·
From the very first paragraph: "The grammar described here is intended to help you understand the language in more detail, rather than to allow you to directly
by ahoge 12y ago
From the very first paragraph:
"The grammar described here is intended to help you understand the language in more detail, rather than to allow you to directly implement a parser or compiler."
A language specification is for people who want to implement a parser/compiler/VM/etc. It's something you need if you want to standardize it (e.g. TC39 [ECMAScript] and TC52 [Dart]).
A language specification is also generally clearly labeled as such.
http://en.wikipedia.org/wiki/Programming_language_specification http://en.wikipedia.org/wiki/Programming_language_specificat...
PHP, for example, doesn't have one.
- pjmlp 12y agoAh, so you mean a formal language spec, not an informal one. Edit: I forgot to mention that both Go and Java lack ECMA and ISO specs.
- ahoge 12y agoYes, a language specification is just a prerequisite for standardization. However, it's also useful for people who want to write their own implementation or tools. It also makes issue handling a bit smoother, because you can always check what the spec says if two bits of the ecosystem disagree with each other.